{"items":[{"type":"link","label":"Dyflexis API","link":"/openapi","routeSlug":"/openapi","content":{"contentType":"overview","meta":{"name":"Dyflexis API"},"children":[{"nodeType":"container","panels":[{"title":"Download OpenAPI description","titleTranslationKey":"download.description.title","children":[{"kind":"download","label":"openapi.json","url":"/_bundle/openapi.json?download"},{"kind":"download","label":"openapi.yaml","url":"/_bundle/openapi.yaml?download"}]},{"title":"Overview","titleTranslationKey":"info.title","children":[{"kind":"externallink","title":"URL","titleTranslationKey":"info.contact.url","label":"https://dyflexis.com","url":"https://dyflexis.com"},{"kind":"email","title":"Dyflexis","email":"integrations@dyflexis.com","label":"integrations@dyflexis.com","withCopyButton":true,"copyContent":"integrations@dyflexis.com"},{"kind":"externallink","title":"License","titleTranslationKey":"info.license","label":"Proprietary","url":"https://dyflexis.com"}]},{"title":"Languages","titleTranslationKey":"languages.title","children":[{"kind":"languages","options":[{"key":"curl","title":"curl","lang":"curl"},{"key":"javascript","title":"JavaScript","lang":"JavaScript"},{"key":"node","title":"Node.js","lang":"Node.js"},{"key":"python","title":"Python","lang":"Python"},{"key":"php","title":"PHP","lang":"PHP"},{"key":"go","title":"Go","lang":"Go"}]}]},{"title":"Servers","titleTranslationKey":"servers.title","children":[{"kind":"servers","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" The tenant identifier (also called the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"em","inline":true,"attributes":{"marker":"*"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"system name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") of the customer envoirement you are integrating with."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The system name is set by Dyflexis when the customer's"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"environment is created and is "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"provided to you by the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"customer"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" when they connect your integration, partners"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"do not pick or generate this value themselves. The same"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"value is what the customer sees as the first path segment"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"of their own Dyflexis URL"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"https://app.dyflexis.com/<systemName>/..."},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"), so if you"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"are unsure of the value for a particular customer, ask"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"them or have them check their browser address bar. The"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"same system name is used for every endpoint on every API"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"version."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The default "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"your-tenant"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" shown here is a placeholder and"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"must be replaced with the customer's real system name"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"before sending a request."},"children":[]}]}]}]}}}],"mode":"default"}]}],"children":[{"nodeType":"overview-section-wrapper","children":[{"nodeType":"header","level":1,"label":"Dyflexis API","showPageActions":true},{"nodeType":"markdoc","content":"REST API for the Dyflexis workforce management platform."},{"nodeType":"overview-section-wrapper","children":[{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Dyflexis is a complete "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"workforce management platform"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" that"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"brings staff scheduling, time tracking and attendance, leave and"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"absence, AI-powered demand forecasting, payroll, performance"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"management, skills management, and an employee hub with chat"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"together in one system. The Dyflexis API gives you programmatic access to the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"workforce data behind that platform, the (automated) staff"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"planning, time tracking, payrolling, absence management, workload"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"information, and staff capacity that Dyflexis manages."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Endpoints are organised by resource, "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Employees"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Contracts"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Time clock"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Payroll"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Absence"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Information streams"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", and"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"so on. The version of each endpoint ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"v0"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"api2"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"v3"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") lives in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"URL; you can mix versions in the same integration."},"children":[]}]}]}]}],"sectionId":"/openapi"}],"sectionId":"/openapi"},{"nodeType":"overview-section-wrapper","children":[{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"heading","attributes":{"level":2,"id":"section/base-url"},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Base URL"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"https://app.dyflexis.com/{systemName}\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"https://app.dyflexis.com/{systemName}\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{systemName}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with the tenant identifier of the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"customer you are integrating with, the customer provides this"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"value to you when they connect your integration (see the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"#section/Servers"},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"systemName"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" server variable"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" below for"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"details on where to find it). Every server URL in this"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"specification (and any new environment added in the future)"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"starts with this base; new environments extend it with"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"additional path segments rather than introducing a different"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"host. This is enforced by the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"rule/server-url-base"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" lint"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"assertion in "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"redocly.yaml"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Each version has its own URL"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"prefix under that base:"},"children":[]}]}]},{"$$mdtype":"Node","type":"table","attributes":{},"children":[{"$$mdtype":"Node","type":"thead","attributes":{},"children":[{"$$mdtype":"Node","type":"tr","attributes":{},"children":[{"$$mdtype":"Node","type":"th","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Version"},"children":[]}]}]},{"$$mdtype":"Node","type":"th","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefix"},"children":[]}]}]},{"$$mdtype":"Node","type":"th","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Status"},"children":[]}]}]}]}]},{"$$mdtype":"Node","type":"tbody","attributes":{},"children":[{"$$mdtype":"Node","type":"tr","attributes":{},"children":[{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"v3"},"children":[]}]}]},{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"/api/<resource>/v3/..."},"children":[]}]}]},{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Latest production, preferred for new integrations"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"tr","attributes":{},"children":[{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"api2 (v2)"},"children":[]}]}]},{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"/api2/..."},"children":[]}]}]},{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Stable production, use when no v3 equivalent exists"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"tr","attributes":{},"children":[{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"v0"},"children":[]}]}]},{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"/api/v0/..."},"children":[]}]}]},{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Legacy, one endpoint kept for existing Business Intelligence consumers"},"children":[]}]}]}]}]}]}]}],"sectionId":"/openapi/section/base-url"},{"nodeType":"overview-section-wrapper","children":[{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"heading","attributes":{"level":2,"id":"section/authentication"},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Authentication"},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Almost every endpoint requires an API key, sent in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header with the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"To call an endpoint directly from these docs: open the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"operation, click "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Try it"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", and open the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab of"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the request panel. "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is pre-filled with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; replace"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"prefix. The key is kept in your browser's session storage only"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"and is cleared when the session ends."},"children":[]}]}]}]}],"sectionId":"/openapi/section/authentication"},{"nodeType":"overview-section-wrapper","children":[{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"heading","attributes":{"level":3,"id":"section/api-scopes"},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API scopes"},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Each token is issued with one or more "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"scopes"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" that gate which"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"parts of the API it can call. A scope is a named permission on the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"token (for example "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"); every operation"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"declares the scope it requires, and the scope must be "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"enabled on"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"your token"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" before that operation will accept the request. A"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"token without the required scope is rejected with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"403 Forbidden"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"even when the token itself is otherwise valid."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Scopes are issued per integration, you do not pick them yourself."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Ask a Dyflexis administrator to enable the scopes you need when you request your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"token. The required scope is listed on each operation."},"children":[]}]}]}]}],"sectionId":"/openapi/section/api-scopes"},{"nodeType":"overview-section-wrapper","children":[{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"heading","attributes":{"level":2,"id":"section/timezones"},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Timezones"},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"All date and time values in this API are expressed in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"timezone configured on the customer's Dyflexis tenant"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", not"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"UTC and not the partner's local timezone. A shift returned as"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"starting at "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"09:00"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" starts at "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"09:00"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" in the customer's"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"configured timezone, regardless of where your client is"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"running, and a timestamp you send in is interpreted the same"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"way. The tenant timezone is a per-customer setting; if you"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"integrate with customers in different countries, treat the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"timezone as a per-tenant property and read or store it"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"alongside the data you process."},"children":[]}]}]}]}],"sectionId":"/openapi/section/timezones"},{"nodeType":"overview-section-wrapper","children":[{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"heading","attributes":{"level":2,"id":"section/errors"},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Errors"},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The API returns standard HTTP status codes. Successful responses are"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"in the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"2xx"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" range; client errors in the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"4xx"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" range; server errors in"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"5xx"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" range."},"children":[]}]}]},{"$$mdtype":"Node","type":"table","attributes":{},"children":[{"$$mdtype":"Node","type":"thead","attributes":{},"children":[{"$$mdtype":"Node","type":"tr","attributes":{},"children":[{"$$mdtype":"Node","type":"th","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Code"},"children":[]}]}]},{"$$mdtype":"Node","type":"th","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Meaning"},"children":[]}]}]}]}]},{"$$mdtype":"Node","type":"tbody","attributes":{},"children":[{"$$mdtype":"Node","type":"tr","attributes":{},"children":[{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"200 OK"},"children":[]}]}]},{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Request succeeded"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"tr","attributes":{},"children":[{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"201 Created"},"children":[]}]}]},{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Resource created"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"tr","attributes":{},"children":[{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"400 Bad Request"},"children":[]}]}]},{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Validation failed or the payload was malformed"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"tr","attributes":{},"children":[{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"401 Unauthorized"},"children":[]}]}]},{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Missing or invalid authentication"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"tr","attributes":{},"children":[{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"403 Forbidden"},"children":[]}]}]},{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Token does not include the required scope"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"tr","attributes":{},"children":[{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"404 Not Found"},"children":[]}]}]},{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Resource or path does not exist"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"tr","attributes":{},"children":[{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"429 Too Many Requests"},"children":[]}]}]},{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Rate limit exceeded, back off and retry"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"tr","attributes":{},"children":[{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"500 Internal Server Error"},"children":[]}]}]},{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Unexpected server error"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"tr","attributes":{},"children":[{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"503 Service Unavailable"},"children":[]}]}]},{"$$mdtype":"Node","type":"td","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Upstream system temporarily unavailable"},"children":[]}]}]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Error bodies are returned as "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"application/json"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"only when the request"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"sends an "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Accept: application/json"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; without it the API may"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"return an HTML error page instead, so always send that header. A JSON"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"error body has the fields "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"title"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"status"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"detail"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"message"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"same text as "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"detail"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"), and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"code"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Validation failures ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"400"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") add a"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"violations"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" array with one entry per invalid field ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"propertyPath"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"title"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")."},"children":[]}]}]}]}],"sectionId":"/openapi/section/errors"},{"nodeType":"overview-section-wrapper","children":[{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"heading","attributes":{"level":2,"id":"section/rate-limiting"},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Rate limiting"},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requests are rate-limited per token. When a token exceeds the limit,"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"requests return "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"429 Too Many Requests"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Implement exponential backoff"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"on "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"429"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"5xx"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" responses, and avoid tight polling loops."},"children":[]}]}]}]}],"sectionId":"/openapi/section/rate-limiting"},{"nodeType":"overview-section-wrapper","children":[{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"heading","attributes":{"level":2,"id":"section/pagination"},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Pagination"},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"List endpoints paginate with a "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"page"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" query parameter (or a path"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"segment, depending on the version). Where supported, responses"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"include a "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"_links"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" block with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"self"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"next"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"prev"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"first"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", and"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"last"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" URLs you can follow without recomputing."},"children":[]}]}]}]}],"sectionId":"/openapi/section/pagination"}]}]}},{"type":"link","label":"Base URL","link":"/openapi/section/base-url","routeSlug":"/openapi/section/base-url","content":null},{"type":"link","label":"Authentication","link":"/openapi/section/authentication","routeSlug":"/openapi/section/authentication","content":null},{"type":"link","label":"API scopes","link":"/openapi/section/api-scopes","routeSlug":"/openapi/section/api-scopes","content":null},{"type":"link","label":"Timezones","link":"/openapi/section/timezones","routeSlug":"/openapi/section/timezones","content":null},{"type":"link","label":"Errors","link":"/openapi/section/errors","routeSlug":"/openapi/section/errors","content":null},{"type":"link","label":"Rate limiting","link":"/openapi/section/rate-limiting","routeSlug":"/openapi/section/rate-limiting","content":null},{"type":"link","label":"Pagination","link":"/openapi/section/pagination","routeSlug":"/openapi/section/pagination","content":null},{"type":"separator","label":"Offices & departments","content":null},{"type":"group","label":"Offices & departments","link":"/openapi/offices-and-departments","routeSlug":"/openapi/offices-and-departments","items":[{"label":"Fetch the department tree","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/offices-and-departments/getdepartmenttree","routeSlug":"/openapi/offices-and-departments/getdepartmenttree","metadata":{"seo":{"title":"Fetch the department tree","description":"Requires scope: business or payroll."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"getDepartmentTree","name":"Fetch the department tree","isWebhook":false,"pointer":"/paths/~1api~1department-management~1v3~1tree/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Fetch the department tree","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" or "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Retrieves all organizational units (offices, department groups, and departments) in a hierarchical tree structure. For a hospitality group, this typically returns each hotel or restaurant as an office, with departments such as Front of House, Kitchen, Housekeeping, and Bar nested underneath."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["business"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]},{"schemes":[{"name":"apiKey","scopes":["payroll"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/api/department-management/v3/tree","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["business"]},{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["payroll"]}],"responseCodes":["200","401","403","404"],"pointer":"/api/department-management/v3/tree","href":"offices-and-departments/getdepartmenttree","openApiOperationId":"getDepartmentTree","summary":"Fetch the department tree","securityGroups":[{"apiKey":["business"]},{"apiKey":["payroll"]}]},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_57"}},"schemaId":"schema_57"},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1department-management~1v3~1tree/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1department-management~1v3~1tree/get/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1department-management~1v3~1tree/get/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1department-management~1v3~1tree/get/responses/403/content/application~1json/example"]},{"code":"404","description":"Not Found"}],"pointer":"/paths/~1api~1department-management~1v3~1tree/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_57","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_57"}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1department-management~1v3~1tree/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1department-management~1v3~1tree/get/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1department-management~1v3~1tree/get/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1department-management~1v3~1tree/get/responses/403/content/application~1json/example"]}}},{"code":"404"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/offices-and-departments/getdepartmenttree"}],"panels":[]}]},"httpPath":"/api/department-management/v3/tree"},{"label":"List offices","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/offices-and-departments/listoffices","routeSlug":"/openapi/offices-and-departments/listoffices","metadata":{"seo":{"title":"List offices","description":"Requires scope: external_employees or clock."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listOffices","name":"List offices","isWebhook":false,"pointer":"/paths/~1api2~1offices/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List offices","badges":[{"name":"LEGACY","color":"#526fa6"}],"isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" or "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"blockquote","attributes":{},"children":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Legacy"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", Kept for existing integrations. New integrations should use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"GET /api/department-management/v3/tree"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", which returns offices together with their department structure in one call."},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returns a list of all available offices. This will not include department groups or departments."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["external_employees","clock"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/api2/offices","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["external_employees","clock"]}],"responseCodes":["200","401","403","503"],"pointer":"/api2/offices","href":"offices-and-departments/listoffices","openApiOperationId":"listOffices","summary":"List offices"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_58"}},"schemaId":"schema_58"},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1offices/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1offices/get/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1offices/get/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1offices/get/responses/403/content/application~1json/example"]},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api2~1offices/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_58","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_58"}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1offices/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1offices/get/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1offices/get/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1offices/get/responses/403/content/application~1json/example"]}}},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/offices-and-departments/listoffices"}],"panels":[]}]},"badges":[{"name":"LEGACY","color":"#526fa6"}],"httpPath":"/api2/offices"}],"content":{"contentType":"group","meta":{"name":"Offices & departments"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Offices & departments","showPageActions":true},{"nodeType":"markdoc","content":"Offices are the top-level organisational units in Dyflexis;\ndepartments are nested inside them. Use these endpoints to\ndiscover the offices you can write data against and to fetch the\nfull department tree of an office."}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/api/department-management/v3/tree","summary":"Fetch the department tree","prefix":{"name":"get","color":"get"},"badges":[],"link":"/offices-and-departments/getdepartmenttree","deprecated":false},{"title":"/api2/offices","summary":"List offices","prefix":{"name":"get","color":"get"},"badges":[{"name":"LEGACY","color":"#526fa6"}],"link":"/offices-and-departments/listoffices","deprecated":false}]}]}]}]}},{"type":"separator","label":"Employees","content":null},{"type":"group","label":"Employees","link":"/openapi/employees","routeSlug":"/openapi/employees","items":[{"label":"List employees","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/employees/listbusinessemployees","routeSlug":"/openapi/employees/listbusinessemployees","metadata":{"seo":{"title":"List employees","description":"Requires scope: business."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listBusinessEmployees","name":"List employees","isWebhook":false,"pointer":"/paths/~1api~1business~1v3~1employees/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List employees","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fetches all active employees, their labels, and their card numbers."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["business"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"query","label":"Query","labelTranslationKey":"query","parameters":[{"name":"page","in":"query","schemaId":"schema_60","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Page number of the paginated result set. The first page is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"1"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]},{"name":"includeInactive","in":"query","schemaId":"schema_61","description":"Also include inactive employees","example":true}],"pointer":"/paths/~1api~1business~1v3~1employees/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/api/business/v3/employees","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[{"name":"page","in":"query","required":false,"schemaId":"schema_60"},{"name":"includeInactive","in":"query","required":false,"example":true,"schemaId":"schema_61"}],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["business"]}],"responseCodes":["200","401","403","404"],"pointer":"/api/business/v3/employees","href":"employees/listbusinessemployees","openApiOperationId":"listBusinessEmployees","summary":"List employees"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_62"}},"schemaId":"schema_62"},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1employees/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1employees/get/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1employees/get/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1employees/get/responses/403/content/application~1json/example"]},{"code":"404","description":"Invalid page"}],"pointer":"/paths/~1api~1business~1v3~1employees/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_62","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_62"}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1employees/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1employees/get/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1employees/get/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1employees/get/responses/403/content/application~1json/example"]}}},{"code":"404"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/employees/listbusinessemployees"}],"panels":[]}]},"httpPath":"/api/business/v3/employees"},{"label":"List personnel numbers","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/employees/listpersonnelnumbers","routeSlug":"/openapi/employees/listpersonnelnumbers","metadata":{"seo":{"title":"List personnel numbers","description":"Requires scope: employee_mappings."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listPersonnelNumbers","name":"List personnel numbers","isWebhook":false,"pointer":"/paths/~1api2~1employee-mappings/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List personnel numbers","badges":[{"name":"LEGACY","color":"#526fa6"}],"isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"blockquote","attributes":{},"children":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Legacy"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", Kept for existing integrations. New integrations should use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"GET /api/business/v3/employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", which returns the same mapping ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employeeId"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"personnelNumber"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") along with the full employee record."},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returns a list of personnel numbers and their corresponding Dyflexis employee ids. Employees that do not have a personnel number will be omitted."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["employee_mappings"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/api2/employee-mappings","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["employee_mappings"]}],"responseCodes":["200","401","403","503"],"pointer":"/api2/employee-mappings","href":"employees/listpersonnelnumbers","openApiOperationId":"listPersonnelNumbers","summary":"List personnel numbers"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_63"}},"schemaId":"schema_63"},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1employee-mappings/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1employee-mappings/get/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1employee-mappings/get/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1employee-mappings/get/responses/403/content/application~1json/example"]},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api2~1employee-mappings/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_63","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_63"}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1employee-mappings/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1employee-mappings/get/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1employee-mappings/get/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1employee-mappings/get/responses/403/content/application~1json/example"]}}},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/employees/listpersonnelnumbers"}],"panels":[]}]},"badges":[{"name":"LEGACY","color":"#526fa6"}],"httpPath":"/api2/employee-mappings"},{"label":"Create or update an employee","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/employees/createorupdateemployee","routeSlug":"/openapi/employees/createorupdateemployee","metadata":{"seo":{"title":"Create or update an employee","description":"Requires scope: external_employees."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"createOrUpdateEmployee","name":"Create or update an employee","isWebhook":false,"pointer":"/paths/~1api2~1external-employees~1{employeeReference}/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Create or update an employee","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"You can use this endpoint to send employee data to Dyflexis. This will create an external employee in Dyflexis, or update an existing external employee if one with the same unique reference already exists."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"An external employee will need to be connected to either an existing or a new Dyflexis employee within the Dyflexis application. An administrator can do this by using the widget in the employee overview page, or by using the external employee connection settings screen."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Once connected, the Dyflexis employee will be kept in sync with the external employee whenever data is sent to this endpoint."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["external_employees"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"employeeReference","in":"path","schemaId":"schema_64","description":"Unique reference to the employee","required":true}],"pointer":"/paths/~1api2~1external-employees~1{employeeReference}/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_65"}},"schemaId":"schema_65","pointer":"/paths/~1api2~1external-employees~1{employeeReference}/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/api2/external-employees/{employeeReference}","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[{"name":"employeeReference","in":"path","required":true,"schemaId":"schema_64"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["external_employees"]}],"requestBody":{"application/json":{"schemaId":"schema_65"}},"responseCodes":["200","400","401","403","503"],"pointer":"/api2/external-employees/{employeeReference}","href":"employees/createorupdateemployee","openApiOperationId":"createOrUpdateEmployee","summary":"Create or update an employee"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"schemaId":"schema_65","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_65"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Success. On a successful upsert the body is an empty JSON array. Data"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"warnings and errors are reported via the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"400"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" response instead."},"children":[]}]}]}],"mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_66","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}/post/responses/200/content/application~1json/example"]}},"schemaId":"schema_66","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}/post/responses/200/content/application~1json/example"]},{"code":"400","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Response code 400 - Bad request. Two outcomes are possible:"},"children":[]}]}]},{"$$mdtype":"Node","type":"list","attributes":{"ordered":false,"marker":"-"},"children":[{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Warning: data may be incorrect but will still be accepted. Will empty any fields containing invalid data when linked to a Dyflexis employee."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Error: missing required data, the operation cannot continue and nothing will be saved."},"children":[]}]}]}]}],"mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_67"}},"schemaId":"schema_67"},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}/post/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}/post/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}/post/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}/post/responses/403/content/application~1json/example"]},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api2~1external-employees~1{employeeReference}/post/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_66","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}/post/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_66","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}/post/responses/200/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_67","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_67"}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}/post/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}/post/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}/post/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}/post/responses/403/content/application~1json/example"]}}},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/employees/createorupdateemployee"}],"panels":[]}]},"httpPath":"/api2/external-employees/{employeeReference}"}],"content":{"contentType":"group","meta":{"name":"Employees"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Employees","showPageActions":true},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Employees are the people working in your organisation. Use these"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"endpoints to list employees; to map a Dyflexis employee to an external"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"personnel number; and to create or update an external employee"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"record from your own HR or payroll system."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Three list endpoints are exposed under different token scopes so"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"each consumer sees only the data its scope is allowed to read:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/api/business/v3/employees","summary":"List employees","prefix":{"name":"get","color":"get"},"badges":[],"link":"/employees/listbusinessemployees","deprecated":false},{"title":"/api2/employee-mappings","summary":"List personnel numbers","prefix":{"name":"get","color":"get"},"badges":[{"name":"LEGACY","color":"#526fa6"}],"link":"/employees/listpersonnelnumbers","deprecated":false},{"title":"/api2/external-employees/{employeeReference}","summary":"Create or update an employee","prefix":{"name":"post","color":"post"},"badges":[],"link":"/employees/createorupdateemployee","deprecated":false}]}]}]}]}},{"type":"separator","label":"Employment contracts","content":null},{"type":"group","label":"Employment contracts","link":"/openapi/employment-contracts","routeSlug":"/openapi/employment-contracts","items":[{"label":"List contract types","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/employment-contracts/listcontracttypes","routeSlug":"/openapi/employment-contracts/listcontracttypes","metadata":{"seo":{"title":"List contract types","description":"Requires scope: external_employees."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listContractTypes","name":"List contract types","isWebhook":false,"pointer":"/paths/~1api2~1contract-types/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List contract types","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returns a list of all available contract types"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["external_employees"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/api2/contract-types","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["external_employees"]}],"responseCodes":["200","401","403","503"],"pointer":"/api2/contract-types","href":"employment-contracts/listcontracttypes","openApiOperationId":"listContractTypes","summary":"List contract types"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_68"}},"schemaId":"schema_68"},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1contract-types/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1contract-types/get/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1contract-types/get/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1contract-types/get/responses/403/content/application~1json/example"]},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api2~1contract-types/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_68","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_68"}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1contract-types/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1contract-types/get/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1contract-types/get/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1contract-types/get/responses/403/content/application~1json/example"]}}},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/employment-contracts/listcontracttypes"}],"panels":[]}]},"httpPath":"/api2/contract-types"},{"label":"Create or update contracts","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/employment-contracts/createorupdatecontracts","routeSlug":"/openapi/employment-contracts/createorupdatecontracts","metadata":{"seo":{"title":"Create or update contracts","description":"Requires scope: external_employees."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"createOrUpdateContracts","name":"Create or update contracts","isWebhook":false,"pointer":"/paths/~1api2~1external-employees~1{employeeReference}~1contracts/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Create or update contracts","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["external_employees"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"employeeReference","in":"path","schemaId":"schema_64","description":"Unique reference to the employee","required":true}],"pointer":"/paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/Contracts"}},"schemaId":"components/schemas/Contracts","pointer":"/paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/api2/external-employees/{employeeReference}/contracts","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[{"name":"employeeReference","in":"path","required":true,"schemaId":"schema_64"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["external_employees"]}],"requestBody":{"application/json":{"schemaId":"components/schemas/Contracts"}},"responseCodes":["200","400","401","403","503"],"pointer":"/api2/external-employees/{employeeReference}/contracts","href":"employment-contracts/createorupdatecontracts","openApiOperationId":"createOrUpdateContracts","summary":"Create or update contracts"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"schemaId":"components/schemas/Contracts","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/Contracts"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Success. On a successful upsert the body is an empty JSON array. Data"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"warnings and errors are reported via the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"400"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" response instead."},"children":[]}]}]}],"mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_66","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/200/content/application~1json/example"]}},"schemaId":"schema_66","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/200/content/application~1json/example"]},{"code":"400","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Response code 400 - Bad request. Two outcomes are possible:"},"children":[]}]}]},{"$$mdtype":"Node","type":"list","attributes":{"ordered":false,"marker":"-"},"children":[{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Warning: data may be incorrect but will still be accepted. Will skip all invalid contracts when linked to a Dyflexis employee."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Error: missing required data, the operation cannot continue and nothing will be saved."},"children":[]}]}]}]}],"mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_69","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/400/content/application~1json/examples/warning","paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/400/content/application~1json/examples/error"]}},"schemaId":"schema_69","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/400/content/application~1json/examples/warning","paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/400/content/application~1json/examples/error"]},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/403/content/application~1json/example"]},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_66","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_66","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/200/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_69","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/400/content/application~1json/examples/warning","paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/400/content/application~1json/examples/error"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_69","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/400/content/application~1json/examples/warning","paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/400/content/application~1json/examples/error"]}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/403/content/application~1json/example"]}}},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/employment-contracts/createorupdatecontracts"}],"panels":[]}]},"httpPath":"/api2/external-employees/{employeeReference}/contracts"}],"content":{"contentType":"group","meta":{"name":"Employment contracts"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Employment contracts","showPageActions":true},{"nodeType":"markdoc","content":"Employment contracts describe an employee's terms of employment, \noffice, contract type, hours, salary, and validity period. Use\nthese endpoints to list available contract types and to push\ncontracts from your HR system into Dyflexis."}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/api2/contract-types","summary":"List contract types","prefix":{"name":"get","color":"get"},"badges":[],"link":"/employment-contracts/listcontracttypes","deprecated":false},{"title":"/api2/external-employees/{employeeReference}/contracts","summary":"Create or update contracts","prefix":{"name":"post","color":"post"},"badges":[],"link":"/employment-contracts/createorupdatecontracts","deprecated":false}]}]}]}]}},{"type":"separator","label":"Workload & capacity","content":null},{"type":"group","label":"Information streams","link":"/openapi/information-streams","routeSlug":"/openapi/information-streams","items":[{"type":"link","label":"Onboarding flow","link":"/openapi/information-streams/onboarding-flow","routeSlug":"/openapi/information-streams/onboarding-flow","content":{"contentType":"item","itemVariant":"markdown","meta":{"name":"Onboarding flow"},"children":[{"nodeType":"container","children":[{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"heading","attributes":{"level":3,"id":"information-streams/onboarding-flow"},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Onboarding flow"},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"When integrating a new information stream, follow these four"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"phases in order:"},"children":[]}]}]},{"$$mdtype":"Node","type":"list","attributes":{"ordered":true,"marker":"."},"children":[{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Create the stream."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Register the stream with"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /information-streams/v3/streams"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", declaring its"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"unit"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"category"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"granularity"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", and, optionally,"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"departmentIds"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" it covers. Department IDs can be looked"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"up by fetching the department tree with"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"#tag/Offices-and-departments/operation/getDepartmentTree"},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"GET /api/department-management/v3/tree"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"which requires a token with the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" scope in"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"addition to the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" scope used by the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"information stream endpoints. The granularity is fixed at"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"creation time and cannot be changed later, so pick the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"finest grain you can reliably supply (typically "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"hour"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"for hospitality, "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"day"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" for retail)."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Backfill historical data."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Push every available"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"realised data point from the past into the stream using"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /information-streams/v3/datapoint/{key}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"AI"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"forecasting only becomes available once the stream holds"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"at least 31 months of historical "},"children":[]},{"$$mdtype":"Node","type":"em","inline":true,"attributes":{"marker":"*"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"realised"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" data"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", so a"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"backfill of that depth is a hard requirement before"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Dyflexis can forecast on top of the stream. Beyond that"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"minimum, the more representative the history (ideally one"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"or more full seasonal cycles), the better the forecast"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"quality."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Push new data in (near) real time."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Once history is"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"in, keep the stream current by sending new data points as"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"soon as they are realised in the source system, ideally"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"as each underlying period closes (end of hour, end of"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"day, etc., depending on the configured granularity). At a"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"minimum, re-push a "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"sliding window"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" of the most recent"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"periods on a regular schedule (for example the last few"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"days or weeks), so that any late-arriving corrections in"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the source system are reflected in the stream. Better"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"still, update the information stream on every change to"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the underlying historical data, so the stream always"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"mirrors the source of truth."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Understand roll-ups."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Verify that the data you pushed"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"at the configured granularity rolls up correctly into the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"higher granularities your customer reports on in Dyflexis"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"(see below)."},"children":[]}]}]}]}]}],"panels":[]}]}},{"type":"link","label":"Roll-ups","link":"/openapi/information-streams/roll-ups","routeSlug":"/openapi/information-streams/roll-ups","content":{"contentType":"item","itemVariant":"markdown","meta":{"name":"Roll-ups"},"children":[{"nodeType":"container","children":[{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"heading","attributes":{"level":3,"id":"information-streams/roll-ups"},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Roll-ups"},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Roll-ups happen "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"bottom up"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":": hour → day → week → month →"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"quarter → year. Push data at the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"lowest granularity you"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"have available"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and Dyflexis aggregates it into every"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"coarser bucket automatically. The reverse is not true,"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"sending only daily totals will not give you hourly detail"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"later, so always push at the finest grain the source"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"system can produce."},"children":[]}]}]},{"$$mdtype":"Node","type":"blockquote","attributes":{},"children":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"A \"work day\" is not always a calendar day."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" A work"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"day in Dyflexis is the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"operating day"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" the customer"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"uses to run their business, which can differ from the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"calendar day that runs "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"00:00"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-"},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"23:59"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Many hospitality"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"customers stay open past midnight; for example, a bar"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"that opens on Friday at "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"19:00"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and closes Saturday at"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"04:00"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is operating a single Friday shift, not two"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"separate days. In that case organisations prefer the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"workload (e.g. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"revenue"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") realised between Saturday"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"00:00"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"04:00"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" to be rolled up to "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Friday"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", not"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Saturday, so that daily, weekly, and monthly totals match"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"how the business actually reports on itself."},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The cut-over time between work days is configured per"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"office on the customer's tenant. As an integrator you do"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"not need to shift timestamps yourself, push each data point"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"at the actual clock time it occurred and Dyflexis will roll"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"it up to the correct work day."},"children":[]}]}]}]}],"panels":[]}]}},{"label":"List information streams","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/information-streams/listinformationstreams","routeSlug":"/openapi/information-streams/listinformationstreams","metadata":{"seo":{"title":"List information streams","description":"Requires scope: forecasting."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listInformationStreams","name":"List information streams","isWebhook":false,"pointer":"/paths/~1information-streams~1v3~1list/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List information streams","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returns information streams available to the authenticated token (scoped by the location selection logic)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Filtering is supported via query parameters. List parameters ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"departmentIds"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"categories"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"types"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"units"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"are provided as comma-separated values."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"If "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"groupBy"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is provided, the response shape changes to a grouped payload."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["forecasting"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"query","label":"Query","labelTranslationKey":"query","parameters":[{"name":"category","in":"query","schemaId":"schema_70","description":"Single information stream category to filter by."},{"name":"search","in":"query","schemaId":"schema_64","description":"Search term to filter information streams by name."},{"name":"groupBy","in":"query","schemaId":"schema_71","description":"Group information streams by a specific field."},{"name":"officeId","in":"query","schemaId":"schema_72","description":"Filter information streams by location identifier."},{"name":"departmentIds","in":"query","schemaId":"schema_73","description":"Comma-separated list of department identifiers."},{"name":"categories","in":"query","schemaId":"schema_74","description":"Comma-separated list of categories to filter by."},{"name":"types","in":"query","schemaId":"schema_73","description":"Comma-separated list of stream types to filter by."},{"name":"units","in":"query","schemaId":"schema_73","description":"Comma-separated list of units to filter by."}],"pointer":"/paths/~1information-streams~1v3~1list/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/information-streams/v3/list","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[{"name":"category","in":"query","required":false,"schemaId":"schema_70"},{"name":"search","in":"query","required":false,"schemaId":"schema_64"},{"name":"groupBy","in":"query","required":false,"schemaId":"schema_71"},{"name":"officeId","in":"query","required":false,"schemaId":"schema_72"},{"name":"departmentIds","in":"query","required":false,"schemaId":"schema_73","style":"form","explode":false},{"name":"categories","in":"query","required":false,"schemaId":"schema_74","style":"form","explode":false},{"name":"types","in":"query","required":false,"schemaId":"schema_73","style":"form","explode":false},{"name":"units","in":"query","required":false,"schemaId":"schema_73","style":"form","explode":false}],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["forecasting"]}],"responseCodes":["200","400","401","403"],"pointer":"/information-streams/v3/list","href":"information-streams/listinformationstreams","openApiOperationId":"listInformationStreams","summary":"List information streams"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The list of information streams. Without "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"groupBy"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" the body is a JSON array"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"of stream objects. With "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"groupBy"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" the body is an object with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"groups"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"streams"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" arrays."},"children":[]}]}]}],"mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_75","exampleIds":["paths/~1information-streams~1v3~1list/get/responses/200/content/application~1json/examples/ungrouped","paths/~1information-streams~1v3~1list/get/responses/200/content/application~1json/examples/grouped"]}},"schemaId":"schema_75","exampleIds":["paths/~1information-streams~1v3~1list/get/responses/200/content/application~1json/examples/ungrouped","paths/~1information-streams~1v3~1list/get/responses/200/content/application~1json/examples/grouped"]},{"code":"400","description":"Validation failed.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1information-streams~1v3~1list/get/responses/400/content/application~1json/example"]}},"schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1information-streams~1v3~1list/get/responses/400/content/application~1json/example"]},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1list/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1list/get/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1list/get/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1list/get/responses/403/content/application~1json/example"]}],"pointer":"/paths/~1information-streams~1v3~1list/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_75","exampleIds":["paths/~1information-streams~1v3~1list/get/responses/200/content/application~1json/examples/ungrouped","paths/~1information-streams~1v3~1list/get/responses/200/content/application~1json/examples/grouped"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_75","exampleIds":["paths/~1information-streams~1v3~1list/get/responses/200/content/application~1json/examples/ungrouped","paths/~1information-streams~1v3~1list/get/responses/200/content/application~1json/examples/grouped"]}}},{"code":"400","schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1information-streams~1v3~1list/get/responses/400/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1information-streams~1v3~1list/get/responses/400/content/application~1json/example"]}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1list/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1list/get/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1list/get/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1list/get/responses/403/content/application~1json/example"]}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/information-streams/listinformationstreams"}],"panels":[]}]},"httpPath":"/information-streams/v3/list"},{"label":"Fetch information stream data points","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/information-streams/listinformationstreamdatapoints","routeSlug":"/openapi/information-streams/listinformationstreamdatapoints","metadata":{"seo":{"title":"Fetch information stream data points","description":"Requires scope: forecasting."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listInformationStreamDataPoints","name":"Fetch information stream data points","isWebhook":false,"pointer":"/paths/~1information-streams~1v3~1data-points/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Fetch information stream data points","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returns data points for a single information stream."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The timestamps specify the lower bound of the time window, where the window is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"granularity"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" long."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"For example, if "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"granularity=\"hour\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", the value at \"2026-04-02 11:00:00\" indicates the value between"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"\"2026-04-02 11:00:00\" and \"2026-04-02 12:00:00\"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"If "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"granularity"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is not provided, the configured granularity of the information stream will be used."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["forecasting"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"query","label":"Query","labelTranslationKey":"query","parameters":[{"name":"key","in":"query","schemaId":"schema_64","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Information stream identifier (stream key) to filter by. Required:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"omitting it currently results in a "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"500"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" rather than a "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"400"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"required":true,"example":"covers-per-hour-pier9"},{"name":"startDate","in":"query","schemaId":"schema_76","description":"Start date of the information stream data in YYYY-MM-DD format","required":true,"example":"2026-06-01"},{"name":"endDate","in":"query","schemaId":"schema_76","description":"End date of the information stream data in YYYY-MM-DD format","required":true,"example":"2026-06-30"},{"name":"granularity","in":"query","schemaId":"schema_77","description":"Granularity of the information stream data to group by.\n\nIf not provided, the configured granularity of the information stream will be used.\n\nIf provided, it must be coarser than the information stream's granularity. Then, the data will be summed/grouped to the specified granularity.\n"}],"pointer":"/paths/~1information-streams~1v3~1data-points/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/information-streams/v3/data-points","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[{"name":"key","in":"query","required":true,"example":"covers-per-hour-pier9","schemaId":"schema_64"},{"name":"startDate","in":"query","required":true,"example":"2026-06-01","schemaId":"schema_76"},{"name":"endDate","in":"query","required":true,"example":"2026-06-30","schemaId":"schema_76"},{"name":"granularity","in":"query","required":false,"schemaId":"schema_77"}],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["forecasting"]}],"responseCodes":["200","400","401","403","500"],"pointer":"/information-streams/v3/data-points","href":"information-streams/listinformationstreamdatapoints","openApiOperationId":"listInformationStreamDataPoints","summary":"Fetch information stream data points"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Response code 200 - OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_78","exampleIds":["paths/~1information-streams~1v3~1data-points/get/responses/200/content/application~1json/example"]}},"schemaId":"schema_78","exampleIds":["paths/~1information-streams~1v3~1data-points/get/responses/200/content/application~1json/example"]},{"code":"400","description":"Invalid data in request","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_79"}},"schemaId":"schema_79"},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1data-points/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1data-points/get/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1data-points/get/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1data-points/get/responses/403/content/application~1json/example"]},{"code":"500","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"A server error. Currently also returned when the required "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"key"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" query"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"parameter is omitted (a known limitation; this should be a "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"400"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")."},"children":[]}]}]}],"mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_80"}},"schemaId":"schema_80"}],"pointer":"/paths/~1information-streams~1v3~1data-points/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_78","exampleIds":["paths/~1information-streams~1v3~1data-points/get/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_78","exampleIds":["paths/~1information-streams~1v3~1data-points/get/responses/200/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_79","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_79"}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1data-points/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1data-points/get/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1data-points/get/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1data-points/get/responses/403/content/application~1json/example"]}}},{"code":"500","schemaId":"schema_80","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_80"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/information-streams/listinformationstreamdatapoints"}],"panels":[]}]},"httpPath":"/information-streams/v3/data-points"},{"label":"Create or update an information stream","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/information-streams/createorupdateinformationstream","routeSlug":"/openapi/information-streams/createorupdateinformationstream","metadata":{"seo":{"title":"Create or update an information stream","description":"Requires scope: forecasting."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"createOrUpdateInformationStream","name":"Create or update an information stream","isWebhook":false,"pointer":"/paths/~1information-streams~1v3~1streams/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Create or update an information stream","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Create or update the metadata for an information stream."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Important notes:"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"list","attributes":{"ordered":false,"marker":"-"},"children":[{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"When updating an existing information stream, include all keys to avoid unintentionally resetting values to their defaults."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"departmentIds"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is optional. It may contain department, department group, or location IDs. A department group or location is automatically expanded to its active child departments; the group or location ID itself is not linked. An explicitly listed department is always linked, even when archived. A non-empty selection that resolves to no active departments is rejected."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The linked departments are stored as a snapshot at the moment of the request. Later changes to the organizational structure (for example adding a department to a group) do not change the departments already linked to an existing information stream."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Department, department group, and location IDs can be looked up by fetching the department tree with "},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"#tag/Offices-and-departments/operation/getDepartmentTree"},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"GET /api/department-management/v3/tree"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Fetching the department tree requires a token with the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" scope; the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" scope alone does not grant access to it."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"On create, "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"departmentIds"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" may be omitted; the stream is then created without linked departments."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"On update, "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"departmentIds"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is only applied when a non-empty list is provided. Omitting it (or sending an empty list) leaves the existing departments unchanged."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"granularity"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is required when creating a new information stream."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"When updating an existing information stream, "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"granularity"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is optional. If provided, it must match the already configured granularity. Changing granularity through this endpoint is not supported."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"When onboarding a newly realized workload information stream, ensure that all historically realized data is fully inserted."},"children":[]}]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["forecasting"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/InformationStream"}},"schemaId":"components/schemas/InformationStream","pointer":"/paths/~1information-streams~1v3~1streams/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/information-streams/v3/streams","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["forecasting"]}],"requestBody":{"application/json":{"schemaId":"components/schemas/InformationStream"}},"responseCodes":["200","201","400","401","403","404","500"],"pointer":"/information-streams/v3/streams","href":"information-streams/createorupdateinformationstream","openApiOperationId":"createOrUpdateInformationStream","summary":"Create or update an information stream"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"schemaId":"components/schemas/InformationStream","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/InformationStream"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Response code 200 - OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_81"}},"schemaId":"schema_81"},{"code":"201","description":"Response code 201 - CREATED","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_82"}},"schemaId":"schema_82"},{"code":"400","description":"Validation failed.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/400/content/application~1json/example"]}},"schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/400/content/application~1json/example"]},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/403/content/application~1json/example"]},{"code":"404","description":"The requested resource does not exist.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/404/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/404/content/application~1json/example"]},{"code":"500","description":"Unexpected server error.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/500/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/500/content/application~1json/example"]}],"pointer":"/paths/~1information-streams~1v3~1streams/post/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_81","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_81"}}},{"code":"201","schemaId":"schema_82","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_82"}}},{"code":"400","schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/400/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/400/content/application~1json/example"]}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/403/content/application~1json/example"]}}},{"code":"404","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/404/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/404/content/application~1json/example"]}}},{"code":"500","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/500/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1streams/post/responses/500/content/application~1json/example"]}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/information-streams/createorupdateinformationstream"}],"panels":[]}]},"httpPath":"/information-streams/v3/streams"},{"label":"Store data in an information stream","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/information-streams/storeinformationstreamdata","routeSlug":"/openapi/information-streams/storeinformationstreamdata","metadata":{"seo":{"title":"Store data in an information stream","description":"Requires scope: forecasting."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"storeInformationStreamData","name":"Store data in an information stream","isWebhook":false,"pointer":"/paths/~1information-streams~1v3~1datapoint~1{key}/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Store data in an information stream","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Create or update one or more data points for the information stream’s "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"base (configured) granularity"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" channel."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Access:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Requires an API token that includes the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" scope. The "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"forecasting"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" module must be enabled for the customer. Streams of any "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"source"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" can be written. A manually created ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"user_provided"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") stream is automatically made read-only after a successful write."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Stream shape:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" The stream must be migrated to the v3 structure (configured "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"granularity"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and matching data channel). Legacy v2-only streams respond with "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"400 Bad Request"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (migration required)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Granularity:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" If "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"granularity"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is set on an item, it must "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"exactly match"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" the stream’s configured granularity. If omitted, that configured granularity is assumed."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Unlike the deprecated timeseries upsert, this endpoint does "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"not"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" accept a "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"coarser"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"granularity"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" than the stream to split across finer steps, declared granularity must match the stream."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Value "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"0"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":":"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" A numeric "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"0"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"stored"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" on the base channel for that "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"period"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (so it is distinct from a missing point). Coarser channels are recalculated from the base channel. All values, including "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"0"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", are applied with the same "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"upsert"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" behavior."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Rollups:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" After successful writes, "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"coarser"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" granularity channels (e.g. day, week, …) are "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"recalculated"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" from the base channel where those channels exist."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Successful requests always return "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"200 OK"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with an empty body. The endpoint does not distinguish between insert and update."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["forecasting"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"key","in":"path","schemaId":"schema_64","description":"Information stream identifier to update the data for","required":true,"example":"covers-per-hour-pier9"}],"pointer":"/paths/~1information-streams~1v3~1datapoint~1{key}/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_83"}},"schemaId":"schema_83","pointer":"/paths/~1information-streams~1v3~1datapoint~1{key}/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/information-streams/v3/datapoint/{key}","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[{"name":"key","in":"path","required":true,"example":"covers-per-hour-pier9","schemaId":"schema_64"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["forecasting"]}],"requestBody":{"application/json":{"schemaId":"schema_83"}},"responseCodes":["200","400","401","403","404","500"],"pointer":"/information-streams/v3/datapoint/{key}","href":"information-streams/storeinformationstreamdata","openApiOperationId":"storeInformationStreamData","summary":"Store data in an information stream"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"schemaId":"schema_83","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_83"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Response code 200 - OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_81"}},"schemaId":"schema_81"},{"code":"400","description":"Validation failed.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/400/content/application~1json/example"]}},"schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/400/content/application~1json/example"]},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/403/content/application~1json/example"]},{"code":"404","description":"The requested resource does not exist.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/404/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/404/content/application~1json/example"]},{"code":"500","description":"Unexpected server error.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/500/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/500/content/application~1json/example"]}],"pointer":"/paths/~1information-streams~1v3~1datapoint~1{key}/post/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_81","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_81"}}},{"code":"400","schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/400/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/400/content/application~1json/example"]}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/403/content/application~1json/example"]}}},{"code":"404","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/404/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/404/content/application~1json/example"]}}},{"code":"500","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/500/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/500/content/application~1json/example"]}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/information-streams/storeinformationstreamdata"}],"panels":[]}]},"httpPath":"/information-streams/v3/datapoint/{key}"}],"content":{"contentType":"group","meta":{"name":"Information streams"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Information streams","showPageActions":true},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Information streams hold time-series "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"workload"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"capacity"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" data that drives forecasting and demand-based"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"scheduling in Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"list","attributes":{"ordered":false,"marker":"-"},"children":[{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Workload"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" measures the amount of work that needs to be"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"done in a given timeframe, for example \"covers per hour\" in"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"a restaurant, \"transactions per hour\" in a retail store, or"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"\"room occupancy per day\" in a hotel."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Staff Capacity"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is the staffing needed to execute the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"workload, the employees required expressed in hours or in"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"costs."},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The transformation from workload to capacity, deriving how"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"much staff a given amount of work requires, can also be done"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"in Dyflexis, so you can push raw workload and let Dyflexis"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"compute the capacity it implies. Use these endpoints to"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"register a stream, push data points into it, and read back"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"what has been stored."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"/information-streams/v3/..."},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" family offers stream CRUD,"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"bulk reads, and a configuration-driven data-point payload."},"children":[]}]}]}]}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/information-streams/v3/list","summary":"List information streams","prefix":{"name":"get","color":"get"},"badges":[],"link":"/information-streams/listinformationstreams","deprecated":false},{"title":"/information-streams/v3/data-points","summary":"Fetch information stream data points","prefix":{"name":"get","color":"get"},"badges":[],"link":"/information-streams/listinformationstreamdatapoints","deprecated":false},{"title":"/information-streams/v3/streams","summary":"Create or update an information stream","prefix":{"name":"post","color":"post"},"badges":[],"link":"/information-streams/createorupdateinformationstream","deprecated":false},{"title":"/information-streams/v3/datapoint/{key}","summary":"Store data in an information stream","prefix":{"name":"post","color":"post"},"badges":[],"link":"/information-streams/storeinformationstreamdata","deprecated":false}]}]}]}]}},{"type":"separator","label":"Scheduling","content":null},{"type":"group","label":"Scheduling","link":"/openapi/scheduling","routeSlug":"/openapi/scheduling","items":[{"label":"List scheduled shifts","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/scheduling/listscheduledshifts","routeSlug":"/openapi/scheduling/listscheduledshifts","metadata":{"seo":{"title":"List scheduled shifts","description":"Requires scope: business."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listScheduledShifts","name":"List scheduled shifts","isWebhook":false,"pointer":"/paths/~1api~1business~1v3~1scheduled/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List scheduled shifts","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returns a list of available shifts"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["business"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"query","label":"Query","labelTranslationKey":"query","parameters":[{"name":"startDate","in":"query","schemaId":"schema_84","description":"List shifts that start from this date","example":"2026-12-31"},{"name":"endDate","in":"query","schemaId":"schema_84","description":"List shifts starting before this date (end date exclusive)","example":"2026-12-31"},{"name":"departmentId","in":"query","schemaId":"schema_72","description":"The department the shifts should be scheduled in","example":3},{"name":"departmentGroupId","in":"query","schemaId":"schema_72","description":"the department group the shifts should be scheduled in","example":2},{"name":"officeId","in":"query","schemaId":"schema_72","description":"The office the shifts should be scheduled in","example":1},{"name":"includeOpenShifts","in":"query","schemaId":"schema_61","description":"When true, it also returns open shifts","example":true},{"name":"page","in":"query","schemaId":"schema_60","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Page number of the paginated result set. The first page is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"1"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}],"pointer":"/paths/~1api~1business~1v3~1scheduled/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/api/business/v3/scheduled","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[{"name":"startDate","in":"query","required":false,"example":"2026-12-31","schemaId":"components/schemas/Date"},{"name":"endDate","in":"query","required":false,"example":"2026-12-31","schemaId":"components/schemas/Date"},{"name":"departmentId","in":"query","required":false,"example":3,"schemaId":"schema_72"},{"name":"departmentGroupId","in":"query","required":false,"example":2,"schemaId":"schema_72"},{"name":"officeId","in":"query","required":false,"example":1,"schemaId":"schema_72"},{"name":"includeOpenShifts","in":"query","required":false,"example":true,"schemaId":"schema_61"},{"name":"page","in":"query","required":false,"schemaId":"schema_60"}],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["business"]}],"responseCodes":["200","400","401","403","404","503"],"pointer":"/api/business/v3/scheduled","href":"scheduling/listscheduledshifts","openApiOperationId":"listScheduledShifts","summary":"List scheduled shifts"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_85"}},"schemaId":"schema_85"},{"code":"400","description":"The request was malformed or failed validation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1scheduled/get/responses/400/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1scheduled/get/responses/400/content/application~1json/example"]},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1scheduled/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1scheduled/get/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1scheduled/get/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1scheduled/get/responses/403/content/application~1json/example"]},{"code":"404","description":"Invalid page"},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api~1business~1v3~1scheduled/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_85","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_85"}}},{"code":"400","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1scheduled/get/responses/400/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1scheduled/get/responses/400/content/application~1json/example"]}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1scheduled/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1scheduled/get/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1scheduled/get/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1scheduled/get/responses/403/content/application~1json/example"]}}},{"code":"404"},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/scheduling/listscheduledshifts"}],"panels":[]}]},"httpPath":"/api/business/v3/scheduled"},{"label":"Schedule mutations","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/scheduling/listschedulemutations","routeSlug":"/openapi/scheduling/listschedulemutations","metadata":{"seo":{"title":"Schedule mutations","description":"Authentication: legacy X-Dyflexis-AuthToken header (see the Legacy v0 token security scheme), not Authorization."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listScheduleMutations","name":"Schedule mutations","isWebhook":false,"pointer":"/paths/~1api~1v0~1mutation/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Schedule mutations","badges":[{"name":"LEGACY","color":"#526fa6"}],"isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Authentication:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" legacy "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"X-Dyflexis-AuthToken"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header (see the "},"children":[]},{"$$mdtype":"Node","type":"em","inline":true,"attributes":{"marker":"*"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Legacy v0 token"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" security scheme), not "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"blockquote","attributes":{},"children":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Legacy"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", Kept for existing Business Intelligence consumers. Avoid for new integrations; there is no v3 equivalent yet."},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returns a list of changes in the schedule for the specified period, limits to 500 a page."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"XDyflexisAuthToken","scopes":[],"type":"apiKey","in":"header","paramName":"X-Dyflexis-AuthToken","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Legacy authentication for the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"v0"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" endpoints only: send the API"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"key issued to you by Dyflexis in the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"X-Dyflexis-AuthToken"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"header, without a prefix. Every other endpoint authenticates"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Token ..."},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header instead."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"query","label":"Query","labelTranslationKey":"query","parameters":[{"name":"month","in":"query","schemaId":"schema_72","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required integer in the following range 1 <= integer <= 12"},"children":[]}]}]}],"example":11},{"name":"year","in":"query","schemaId":"schema_72","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required integer in the following range 1 <= integer"},"children":[]}]}]}],"example":2026},{"name":"page","in":"query","schemaId":"schema_60","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Page number of the paginated result set. The first page is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"1"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}],"pointer":"/paths/~1api~1v0~1mutation/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/api/v0/mutation","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[{"name":"month","in":"query","example":11,"schemaId":"schema_72"},{"name":"year","in":"query","example":2026,"schemaId":"schema_72"},{"name":"page","in":"query","required":false,"schemaId":"schema_60"}],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"XDyflexisAuthToken","type":"apiKey","name":"X-Dyflexis-AuthToken","in":"header"}],"scopes":[]}],"responseCodes":["200"],"pointer":"/api/v0/mutation","href":"scheduling/listschedulemutations","openApiOperationId":"listScheduleMutations","summary":"Schedule mutations"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_86","exampleIds":["paths/~1api~1v0~1mutation/get/responses/200/content/application~1json/example"]}},"schemaId":"schema_86","exampleIds":["paths/~1api~1v0~1mutation/get/responses/200/content/application~1json/example"],"headers":{"Content-Type":{"schema":{"type":"string","example":"application/json"}}},"headerSchemaId":"schema_87"}],"pointer":"/paths/~1api~1v0~1mutation/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_86","exampleIds":["paths/~1api~1v0~1mutation/get/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_86","exampleIds":["paths/~1api~1v0~1mutation/get/responses/200/content/application~1json/example"]}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/scheduling/listschedulemutations"}],"panels":[]}]},"badges":[{"name":"LEGACY","color":"#526fa6"}],"httpPath":"/api/v0/mutation"}],"content":{"contentType":"group","meta":{"name":"Scheduling"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Scheduling","showPageActions":true},{"nodeType":"markdoc","content":"List scheduled shifts and the audit trail of schedule mutations\n(creations, modifications, deletions). The mutation feed is a\nlegacy v0 endpoint kept for existing Business Intelligence\nconsumers, there is no v3 equivalent yet."}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/api/business/v3/scheduled","summary":"List scheduled shifts","prefix":{"name":"get","color":"get"},"badges":[],"link":"/scheduling/listscheduledshifts","deprecated":false},{"title":"/api/v0/mutation","summary":"Schedule mutations","prefix":{"name":"get","color":"get"},"badges":[{"name":"LEGACY","color":"#526fa6"}],"link":"/scheduling/listschedulemutations","deprecated":false}]}]}]}]}},{"type":"separator","label":"Time & attendance","content":null},{"type":"group","label":"Clocked hours","link":"/openapi/clocked-hours","routeSlug":"/openapi/clocked-hours","items":[{"label":"Register a clock-in","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/clocked-hours/registerclockin","routeSlug":"/openapi/clocked-hours/registerclockin","metadata":{"seo":{"title":"Register a clock-in","description":"Requires scope: clock."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"registerClockIn","name":"Register a clock-in","isWebhook":false,"pointer":"/paths/~1api~1clock~1v3~1clock-in/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Register a clock-in","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Registers a clock in moment for an employee."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["clock"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_88"}},"schemaId":"schema_88","pointer":"/paths/~1api~1clock~1v3~1clock-in/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/api/clock/v3/clock-in","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["clock"]}],"requestBody":{"application/json":{"schemaId":"schema_88"}},"responseCodes":["201","400","401","403","500","503"],"pointer":"/api/clock/v3/clock-in","href":"clocked-hours/registerclockin","openApiOperationId":"registerClockIn","summary":"Register a clock-in"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"schemaId":"schema_88","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_88"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"201","description":"Response code 201 - CREATED","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_89"}},"schemaId":"schema_89"},{"code":"400","description":"Validation failed.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1api~1clock~1v3~1clock-in/post/responses/400/content/application~1json/example"]}},"schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1api~1clock~1v3~1clock-in/post/responses/400/content/application~1json/example"]},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-in/post/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-in/post/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-in/post/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-in/post/responses/403/content/application~1json/example"]},{"code":"500","description":"Unexpected server error.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-in/post/responses/500/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-in/post/responses/500/content/application~1json/example"]},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api~1clock~1v3~1clock-in/post/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"201","schemaId":"schema_89","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_89"}}},{"code":"400","schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1api~1clock~1v3~1clock-in/post/responses/400/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1api~1clock~1v3~1clock-in/post/responses/400/content/application~1json/example"]}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-in/post/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-in/post/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-in/post/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-in/post/responses/403/content/application~1json/example"]}}},{"code":"500","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-in/post/responses/500/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-in/post/responses/500/content/application~1json/example"]}}},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/clocked-hours/registerclockin"}],"panels":[]}]},"httpPath":"/api/clock/v3/clock-in"},{"label":"Register a clock-out","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/clocked-hours/registerclockout","routeSlug":"/openapi/clocked-hours/registerclockout","metadata":{"seo":{"title":"Register a clock-out","description":"Requires scope: clock."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"registerClockOut","name":"Register a clock-out","isWebhook":false,"pointer":"/paths/~1api~1clock~1v3~1clock-out/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Register a clock-out","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Registers a clock out moment for an employee."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["clock"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_88"}},"schemaId":"schema_88","pointer":"/paths/~1api~1clock~1v3~1clock-out/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/api/clock/v3/clock-out","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["clock"]}],"requestBody":{"application/json":{"schemaId":"schema_88"}},"responseCodes":["201","400","401","403","500","503"],"pointer":"/api/clock/v3/clock-out","href":"clocked-hours/registerclockout","openApiOperationId":"registerClockOut","summary":"Register a clock-out"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"schemaId":"schema_88","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_88"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"201","description":"Response code 201 - CREATED","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_89"}},"schemaId":"schema_89"},{"code":"400","description":"Validation failed.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1api~1clock~1v3~1clock-out/post/responses/400/content/application~1json/example"]}},"schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1api~1clock~1v3~1clock-out/post/responses/400/content/application~1json/example"]},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-out/post/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-out/post/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-out/post/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-out/post/responses/403/content/application~1json/example"]},{"code":"500","description":"Unexpected server error.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-out/post/responses/500/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-out/post/responses/500/content/application~1json/example"]},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api~1clock~1v3~1clock-out/post/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"201","schemaId":"schema_89","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_89"}}},{"code":"400","schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1api~1clock~1v3~1clock-out/post/responses/400/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ValidationError","exampleIds":["paths/~1api~1clock~1v3~1clock-out/post/responses/400/content/application~1json/example"]}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-out/post/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-out/post/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-out/post/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-out/post/responses/403/content/application~1json/example"]}}},{"code":"500","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-out/post/responses/500/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1clock~1v3~1clock-out/post/responses/500/content/application~1json/example"]}}},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/clocked-hours/registerclockout"}],"panels":[]}]},"httpPath":"/api/clock/v3/clock-out"},{"label":"List clock moments","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/clocked-hours/listclockmoments","routeSlug":"/openapi/clocked-hours/listclockmoments","metadata":{"seo":{"title":"List clock moments","description":"Requires scope: attendance_registration."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listClockMoments","name":"List clock moments","isWebhook":false,"pointer":"/paths/~1api2~1attendance-registration~1{date}/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List clock moments","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["attendance_registration"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"date","in":"path","schemaId":"schema_84","description":"Specifies the day to list the attendance registration for, in YYYY-MM-DD format","required":true,"example":"2026-12-31"}],"pointer":"/paths/~1api2~1attendance-registration~1{date}/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/api2/attendance-registration/{date}","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[{"name":"date","in":"path","required":true,"example":"2026-12-31","schemaId":"components/schemas/Date"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["attendance_registration"]}],"responseCodes":["200","400","401","403","404","503"],"pointer":"/api2/attendance-registration/{date}","href":"clocked-hours/listclockmoments","openApiOperationId":"listClockMoments","summary":"List clock moments"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_90"}},"schemaId":"schema_90"},{"code":"400","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The date is well-formed but not a valid calendar date (e.g. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"2026-13-40"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")."},"children":[]}]}]}]},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1attendance-registration~1{date}/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1attendance-registration~1{date}/get/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1attendance-registration~1{date}/get/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1attendance-registration~1{date}/get/responses/403/content/application~1json/example"]},{"code":"404","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The requested resource does not exist. Returned as JSON only when the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"request sends "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Accept: application/json"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; otherwise an HTML error page is"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"returned."},"children":[]}]}]}],"mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1attendance-registration~1{date}/get/responses/404/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1attendance-registration~1{date}/get/responses/404/content/application~1json/example"]},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api2~1attendance-registration~1{date}/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_90","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_90"}}},{"code":"400"},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1attendance-registration~1{date}/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1attendance-registration~1{date}/get/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1attendance-registration~1{date}/get/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1attendance-registration~1{date}/get/responses/403/content/application~1json/example"]}}},{"code":"404","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1attendance-registration~1{date}/get/responses/404/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1attendance-registration~1{date}/get/responses/404/content/application~1json/example"]}}},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/clocked-hours/listclockmoments"}],"panels":[]}]},"httpPath":"/api2/attendance-registration/{date}"}],"content":{"contentType":"group","meta":{"name":"Clocked hours"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Clocked hours","showPageActions":true},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Record clock-in and clock-out events for an employee against a"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"specific clocking device. Both endpoints require the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"token scope."},"children":[]}]}]}]}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/api/clock/v3/clock-in","summary":"Register a clock-in","prefix":{"name":"post","color":"post"},"badges":[],"link":"/clocked-hours/registerclockin","deprecated":false},{"title":"/api/clock/v3/clock-out","summary":"Register a clock-out","prefix":{"name":"post","color":"post"},"badges":[],"link":"/clocked-hours/registerclockout","deprecated":false},{"title":"/api2/attendance-registration/{date}","summary":"List clock moments","prefix":{"name":"get","color":"get"},"badges":[],"link":"/clocked-hours/listclockmoments","deprecated":false}]}]}]}]}},{"type":"group","label":"Registered hours","link":"/openapi/registered-hours","routeSlug":"/openapi/registered-hours","items":[{"label":"List registered hours","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/registered-hours/listregisteredhours","routeSlug":"/openapi/registered-hours/listregisteredhours","metadata":{"seo":{"title":"List registered hours","description":"Requires scope: business."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listRegisteredHours","name":"List registered hours","isWebhook":false,"pointer":"/paths/~1api~1business~1v3~1registered-hours/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List registered hours","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returns a list of available registered hours"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["business"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"query","label":"Query","labelTranslationKey":"query","parameters":[{"name":"startDate","in":"query","schemaId":"schema_84","description":"list registered hours that start from this date","example":"2026-12-31"},{"name":"endDate","in":"query","schemaId":"schema_84","description":"list registered hours up until this date (end date inclusive)","example":"2026-12-31"},{"name":"officeId","in":"query","schemaId":"schema_72","description":"the office the employee has a contract in","example":1},{"name":"page","in":"query","schemaId":"schema_60","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Page number of the paginated result set. The first page is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"1"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}],"pointer":"/paths/~1api~1business~1v3~1registered-hours/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/api/business/v3/registered-hours","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[{"name":"startDate","in":"query","required":false,"example":"2026-12-31","schemaId":"components/schemas/Date"},{"name":"endDate","in":"query","required":false,"example":"2026-12-31","schemaId":"components/schemas/Date"},{"name":"officeId","in":"query","required":false,"example":1,"schemaId":"schema_72"},{"name":"page","in":"query","required":false,"schemaId":"schema_60"}],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["business"]}],"responseCodes":["200","400","401","403","404","503"],"pointer":"/api/business/v3/registered-hours","href":"registered-hours/listregisteredhours","openApiOperationId":"listRegisteredHours","summary":"List registered hours"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_91"}},"schemaId":"schema_91"},{"code":"400","description":"The request was malformed or failed validation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1registered-hours/get/responses/400/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1registered-hours/get/responses/400/content/application~1json/example"]},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1registered-hours/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1registered-hours/get/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1registered-hours/get/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1registered-hours/get/responses/403/content/application~1json/example"]},{"code":"404","description":"Invalid page"},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api~1business~1v3~1registered-hours/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_91","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_91"}}},{"code":"400","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1registered-hours/get/responses/400/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1registered-hours/get/responses/400/content/application~1json/example"]}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1registered-hours/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1registered-hours/get/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1registered-hours/get/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1business~1v3~1registered-hours/get/responses/403/content/application~1json/example"]}}},{"code":"404"},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/registered-hours/listregisteredhours"}],"panels":[]}]},"httpPath":"/api/business/v3/registered-hours"}],"content":{"contentType":"group","meta":{"name":"Registered hours"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Registered hours","showPageActions":true},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Registered hours are the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"confirmed clocking time"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" for an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"employee, after rounding rules and break-time deductions have"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"been applied. They are derived from clocked or manually entered"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"time and represent the finalised, payable hours, distinct from"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the raw clock-in/clock-out events."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use these endpoints to fetch registered hours, and to retrieve"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"attendance registrations (the merged record of planned shifts"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"and clocked hours) for a given date. Useful for reporting,"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"time-and-attendance dashboards, and reconciliation against"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"scheduled hours."},"children":[]}]}]}]}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/api/business/v3/registered-hours","summary":"List registered hours","prefix":{"name":"get","color":"get"},"badges":[],"link":"/registered-hours/listregisteredhours","deprecated":false}]}]}]}]}},{"type":"separator","label":"Payroll","content":null},{"type":"group","label":"Payroll","link":"/openapi/payroll","routeSlug":"/openapi/payroll","items":[{"label":"List payroll employees","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/payroll/listpayrollemployees","routeSlug":"/openapi/payroll/listpayrollemployees","metadata":{"seo":{"title":"List payroll employees","description":"Requires scope: payroll."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listPayrollEmployees","name":"List payroll employees","isWebhook":false,"pointer":"/paths/~1api~1payroll~1v3~1employees/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List payroll employees","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fetches all active employees and their contracts. Returns up to 100 employees per page."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["payroll"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"query","label":"Query","labelTranslationKey":"query","parameters":[{"name":"page","in":"query","schemaId":"schema_60","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Page number of the paginated result set. The first page is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"1"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]},{"name":"includeInactive","in":"query","schemaId":"schema_61","description":"Also include inactive employees","example":true}],"pointer":"/paths/~1api~1payroll~1v3~1employees/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/api/payroll/v3/employees","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[{"name":"page","in":"query","required":false,"schemaId":"schema_60"},{"name":"includeInactive","in":"query","required":false,"example":true,"schemaId":"schema_61"}],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["payroll"]}],"responseCodes":["200","401","403","404","503"],"pointer":"/api/payroll/v3/employees","href":"payroll/listpayrollemployees","openApiOperationId":"listPayrollEmployees","summary":"List payroll employees"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_92"}},"schemaId":"schema_92"},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1employees/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1employees/get/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1employees/get/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1employees/get/responses/403/content/application~1json/example"]},{"code":"404","description":"Invalid page"},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api~1payroll~1v3~1employees/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_92","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_92"}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1employees/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1employees/get/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1employees/get/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1employees/get/responses/403/content/application~1json/example"]}}},{"code":"404"},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/payroll/listpayrollemployees"}],"panels":[]}]},"httpPath":"/api/payroll/v3/employees"},{"label":"Fetch hours per day","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/payroll/gethoursperday","routeSlug":"/openapi/payroll/gethoursperday","metadata":{"seo":{"title":"Fetch hours per day","description":"Requires scope: payroll."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"getHoursPerDay","name":"Fetch hours per day","isWebhook":false,"pointer":"/paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Fetch hours per day","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returns a list of all hours, allowances, and expenses in the requested locked payroll period."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Only days that have either hours, allowances or expenses will be included."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["payroll"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"officeUrl","in":"path","schemaId":"schema_64","description":"Slug of the office you wish to request the payroll information for","required":true,"example":"harborview-grand-hotel"},{"name":"contractTypeGroupName","in":"path","schemaId":"schema_64","description":"Name of the contract type group for the payroll period","required":true,"example":"hospitality-permanent"},{"name":"period","in":"path","schemaId":"schema_64","description":"The label of the payroll period you wish to request the payroll information for","required":true,"example":"2026-M02"}],"pointer":"/paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/api/payroll/v3/hours-per-day/{officeUrl}/{contractTypeGroupName}/{period}","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[{"name":"officeUrl","in":"path","required":true,"example":"harborview-grand-hotel","schemaId":"schema_64"},{"name":"contractTypeGroupName","in":"path","required":true,"example":"hospitality-permanent","schemaId":"schema_64"},{"name":"period","in":"path","required":true,"example":"2026-M02","schemaId":"schema_64"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["payroll"]}],"responseCodes":["200","401","403","404","503"],"pointer":"/api/payroll/v3/hours-per-day/{officeUrl}/{contractTypeGroupName}/{period}","href":"payroll/gethoursperday","openApiOperationId":"getHoursPerDay","summary":"Fetch hours per day"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_93"}},"schemaId":"schema_93"},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/403/content/application~1json/example"]},{"code":"404","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The requested resource does not exist. Returned as JSON only when the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"request sends "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Accept: application/json"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; otherwise an HTML error page is"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"returned."},"children":[]}]}]}],"mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/404/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/404/content/application~1json/example"]},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_93","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_93"}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/403/content/application~1json/example"]}}},{"code":"404","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/404/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/404/content/application~1json/example"]}}},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/payroll/gethoursperday"}],"panels":[]}]},"httpPath":"/api/payroll/v3/hours-per-day/{officeUrl}/{contractTypeGroupName}/{period}"},{"label":"Fetch hours per department","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/payroll/gethoursperdepartment","routeSlug":"/openapi/payroll/gethoursperdepartment","metadata":{"seo":{"title":"Fetch hours per department","description":"Requires scope: payroll."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"getHoursPerDepartment","name":"Fetch hours per department","isWebhook":false,"pointer":"/paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Fetch hours per department","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returns a list of all hours, allowances, and expenses in the requested locked payroll period, grouped by department."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"For the neutral hour types, for example sickness, leave or all the allowances are grouped by the primary department of the employee."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Only days that have hours, allowances, or expenses will be included."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["payroll"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"officeUrl","in":"path","schemaId":"schema_64","description":"Slug of the office you wish to request the payroll information for.","required":true,"example":"harborview-grand-hotel"},{"name":"contractTypeGroupName","in":"path","schemaId":"schema_64","description":"Name of the contract type group for the payroll period.","required":true,"example":"hospitality-permanent"},{"name":"period","in":"path","schemaId":"schema_64","description":"The label of the payroll period you wish to request the payroll information for.","required":true,"example":"2026-M02"}],"pointer":"/paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/api/payroll/v3/hours-per-department/{officeUrl}/{contractTypeGroupName}/{period}","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[{"name":"officeUrl","in":"path","required":true,"example":"harborview-grand-hotel","schemaId":"schema_64"},{"name":"contractTypeGroupName","in":"path","required":true,"example":"hospitality-permanent","schemaId":"schema_64"},{"name":"period","in":"path","required":true,"example":"2026-M02","schemaId":"schema_64"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["payroll"]}],"responseCodes":["200","401","403","404"],"pointer":"/api/payroll/v3/hours-per-department/{officeUrl}/{contractTypeGroupName}/{period}","href":"payroll/gethoursperdepartment","openApiOperationId":"getHoursPerDepartment","summary":"Fetch hours per department"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_94"}},"schemaId":"schema_94"},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/403/content/application~1json/example"]},{"code":"404","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The requested resource does not exist. Returned as JSON only when the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"request sends "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Accept: application/json"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; otherwise an HTML error page is"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"returned."},"children":[]}]}]}],"mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/404/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/404/content/application~1json/example"]}],"pointer":"/paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_94","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_94"}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/403/content/application~1json/example"]}}},{"code":"404","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/404/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/404/content/application~1json/example"]}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/payroll/gethoursperdepartment"}],"panels":[]}]},"httpPath":"/api/payroll/v3/hours-per-department/{officeUrl}/{contractTypeGroupName}/{period}"},{"label":"List wage components","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/payroll/listwagecomponents","routeSlug":"/openapi/payroll/listwagecomponents","metadata":{"seo":{"title":"List wage components","description":"Requires scope: payroll_hours."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listWageComponents","name":"List wage components","isWebhook":false,"pointer":"/paths/~1api2~1payroll~1wage-components/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List wage components","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Lists all available wage components with their user friendly display names."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"This list can be used as an aid in mapping the wage component fields to their corresponding fields in other systems."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Wage components are defined by using the wage component dropdown for columns in the Chronos sheet."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["payroll_hours"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/api2/payroll/wage-components","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["payroll_hours"]}],"responseCodes":["200","401","403","503"],"pointer":"/api2/payroll/wage-components","href":"payroll/listwagecomponents","openApiOperationId":"listWageComponents","summary":"List wage components"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_95"}},"schemaId":"schema_95"},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1wage-components/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1wage-components/get/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1wage-components/get/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1wage-components/get/responses/403/content/application~1json/example"]},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api2~1payroll~1wage-components/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_95","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_95"}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1wage-components/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1wage-components/get/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1wage-components/get/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1wage-components/get/responses/403/content/application~1json/example"]}}},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/payroll/listwagecomponents"}],"panels":[]}]},"httpPath":"/api2/payroll/wage-components"},{"label":"Fetch the payroll period queue","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/payroll/getpayrollperiodqueue","routeSlug":"/openapi/payroll/getpayrollperiodqueue","metadata":{"seo":{"title":"Fetch the payroll period queue","description":"Requires scope: payroll_hours."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"getPayrollPeriodQueue","name":"Fetch the payroll period queue","isWebhook":false,"pointer":"/paths/~1api2~1payroll~1queue~1from~1{lastQueueId}/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Fetch the payroll period queue","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Dyflexis allows the user to \"send\" a locked payroll period for external processing. These payroll periods are then added to a queue which you can fetch using this endpoint."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Each entry in this list has a unique queue id and a URL you can use to fetch the payroll information."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The endpoint will list all queue items that have been created after "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"lastQueueId"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", limited to a maximum of 10 items, so you can easily see whether there are new queue items to process."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"0"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" as "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"lastQueueId"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" to get the very first 10 queue items."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"You will need to keep track of which queue ids you have already processed in order to prevent processing remuneration information more than once."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["payroll_hours"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"lastQueueId","in":"path","schemaId":"schema_72","description":"Queue id of the last item you processed; the response contains only items with a higher id. Use 0 on the first call.","required":true}],"pointer":"/paths/~1api2~1payroll~1queue~1from~1{lastQueueId}/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/api2/payroll/queue/from/{lastQueueId}","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[{"name":"lastQueueId","in":"path","required":true,"schemaId":"schema_72"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["payroll_hours"]}],"responseCodes":["200","401","403","503"],"pointer":"/api2/payroll/queue/from/{lastQueueId}","href":"payroll/getpayrollperiodqueue","openApiOperationId":"getPayrollPeriodQueue","summary":"Fetch the payroll period queue"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_96"}},"schemaId":"schema_96"},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1queue~1from~1{lastQueueId}/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1queue~1from~1{lastQueueId}/get/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1queue~1from~1{lastQueueId}/get/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1queue~1from~1{lastQueueId}/get/responses/403/content/application~1json/example"]},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api2~1payroll~1queue~1from~1{lastQueueId}/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_96","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_96"}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1queue~1from~1{lastQueueId}/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1queue~1from~1{lastQueueId}/get/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1queue~1from~1{lastQueueId}/get/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1queue~1from~1{lastQueueId}/get/responses/403/content/application~1json/example"]}}},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/payroll/getpayrollperiodqueue"}],"panels":[]}]},"httpPath":"/api2/payroll/queue/from/{lastQueueId}"},{"label":"Update queue item status","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/payroll/updatepayrollqueuestatus","routeSlug":"/openapi/payroll/updatepayrollqueuestatus","metadata":{"seo":{"title":"Update queue item status","description":"Requires scope: payroll_hours."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"updatePayrollQueueStatus","name":"Update queue item status","isWebhook":false,"pointer":"/paths/~1api2~1payroll~1queue~1{queueId}~1status/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Update queue item status","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"You can update the status of a queue item in Dyflexis when processing the payroll period queue."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The status is displayed in the Dyflexis payroll page."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["payroll_hours"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"queueId","in":"path","schemaId":"schema_64","description":"The queue item id for which to update the status","required":true}],"pointer":"/paths/~1api2~1payroll~1queue~1{queueId}~1status/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_97"}},"schemaId":"schema_97","pointer":"/paths/~1api2~1payroll~1queue~1{queueId}~1status/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/api2/payroll/queue/{queueId}/status","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[{"name":"queueId","in":"path","required":true,"schemaId":"schema_64"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["payroll_hours"]}],"requestBody":{"application/json":{"schemaId":"schema_97"}},"responseCodes":["200","400","401","403","404","503"],"pointer":"/api2/payroll/queue/{queueId}/status","href":"payroll/updatepayrollqueuestatus","openApiOperationId":"updatePayrollQueueStatus","summary":"Update queue item status"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"schemaId":"schema_97","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_97"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_98"}},"schemaId":"schema_98"},{"code":"400","description":"Invalid status"},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1queue~1{queueId}~1status/post/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1queue~1{queueId}~1status/post/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1queue~1{queueId}~1status/post/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1queue~1{queueId}~1status/post/responses/403/content/application~1json/example"]},{"code":"404","description":"Invalid queue item id"},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api2~1payroll~1queue~1{queueId}~1status/post/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_98","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_98"}}},{"code":"400"},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1queue~1{queueId}~1status/post/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1queue~1{queueId}~1status/post/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1queue~1{queueId}~1status/post/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api2~1payroll~1queue~1{queueId}~1status/post/responses/403/content/application~1json/example"]}}},{"code":"404"},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/payroll/updatepayrollqueuestatus"}],"panels":[]}]},"httpPath":"/api2/payroll/queue/{queueId}/status"},{"type":"separator","label":"Webhooks","variant":"secondary","content":null},{"label":"Payroll period ready","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/openapi/payroll/payrollperiodreadyevent","routeSlug":"/openapi/payroll/payrollperiodreadyevent","metadata":{"seo":{"title":"Payroll period ready","description":"Webhook, Dyflexis sends this POST request to a URL you host. See the Webhooks guide for how to register your receiver and what it must return."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"payrollPeriodReadyEvent","name":"Payroll period ready","isWebhook":true,"pointer":"/paths/payrollPeriodReady/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Payroll period ready","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"blockquote","attributes":{},"children":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Webhook"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", Dyflexis sends this "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" request to a URL "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"you"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" host. See the "},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"/guides/webhooks"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Webhooks guide"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" for how to register your receiver and what it must return."},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Sends a message when the payroll data is ready. You can use the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"payload to call a desired endpoint."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The webhook can't be registered with this API. Please register"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"this webhook in Dyflexis."},"children":[]}]}]}]},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/SendPayroll"}},"schemaId":"components/schemas/SendPayroll","pointer":"/paths/payrollPeriodReady/post/requestBody","description":"Sends a message when the payroll data is ready. You can use the payload to call a desired endpoint."}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"payrollPeriodReady","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[],"requestBody":{"application/json":{"schemaId":"components/schemas/SendPayroll"}},"responseCodes":["200","503"],"pointer":"payrollPeriodReady","href":"payroll/payrollperiodreadyevent","openApiOperationId":"payrollPeriodReadyEvent","summary":"Payroll period ready"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"schemaId":"components/schemas/SendPayroll","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/SendPayroll"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Response code 200 - OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_81"}},"schemaId":"schema_81"},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/payrollPeriodReady/post/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_81","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_81"}}},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/payroll/payrollperiodreadyevent"}],"panels":[]}]},"httpPath":"payrollPeriodReady"}],"content":{"contentType":"group","meta":{"name":"Payroll"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Payroll","showPageActions":true},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The Payroll endpoints implement a "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"bi-directional flow"},"children":[]}]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"between an external payroll system and Dyflexis:"},"children":[]}]}]},{"$$mdtype":"Node","type":"list","attributes":{"ordered":false,"marker":"-"},"children":[{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Payroll → Dyflexis (employee sync)."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" The payroll system"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is typically the source of truth for the workforce."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Employee and contract data can be synced from the payroll"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"system into Dyflexis so that scheduling, time-tracking,"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"and absence administration all operate on the same"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"employee master that payroll uses. The endpoints for this"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"direction live under"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"#tag/Employees"},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Employees"},"children":[]}]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"#tag/Employment-contracts"},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Employment contracts"},"children":[]}]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Dyflexis → Payroll (confirmed hours)."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Once a payroll"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"period closes in Dyflexis, Dyflexis makes "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"all confirmed"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"hour information"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" for that period, aggregated per day"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"and per department, available for the payroll system to"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"pick up and process. Each finalised period is published"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"on a queue you poll and acknowledge, so no period is"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"missed or processed twice."},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Concretely, this resource exposes hours aggregated per day"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"and per department for a payroll period, the queue of"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"finalised payroll periods waiting to be picked up by an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"external payroll system, and the wage components that"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"periods produce."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Typical export flow (Dyflexis → Payroll):"},"children":[]}]}]},{"$$mdtype":"Node","type":"list","attributes":{"ordered":true,"marker":"."},"children":[{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Poll "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"GET /api2/payroll/queue/from/{lastQueueId}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" for new items."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"For each item, fetch the period hours from"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"GET /api/payroll/v3/hours-per-day/..."},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" or"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"GET /api/payroll/v3/hours-per-department/..."},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Acknowledge the item with"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /api2/payroll/queue/{queueId}/status"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/api/payroll/v3/employees","summary":"List payroll employees","prefix":{"name":"get","color":"get"},"badges":[],"link":"/payroll/listpayrollemployees","deprecated":false},{"title":"/api/payroll/v3/hours-per-day/{officeUrl}/{contractTypeGroupName}/{period}","summary":"Fetch hours per day","prefix":{"name":"get","color":"get"},"badges":[],"link":"/payroll/gethoursperday","deprecated":false},{"title":"/api/payroll/v3/hours-per-department/{officeUrl}/{contractTypeGroupName}/{period}","summary":"Fetch hours per department","prefix":{"name":"get","color":"get"},"badges":[],"link":"/payroll/gethoursperdepartment","deprecated":false},{"title":"/api2/payroll/wage-components","summary":"List wage components","prefix":{"name":"get","color":"get"},"badges":[],"link":"/payroll/listwagecomponents","deprecated":false},{"title":"/api2/payroll/queue/from/{lastQueueId}","summary":"Fetch the payroll period queue","prefix":{"name":"get","color":"get"},"badges":[],"link":"/payroll/getpayrollperiodqueue","deprecated":false},{"title":"/api2/payroll/queue/{queueId}/status","summary":"Update queue item status","prefix":{"name":"post","color":"post"},"badges":[],"link":"/payroll/updatepayrollqueuestatus","deprecated":false}]},{"kind":"group-items","title":"Webhooks","titleTranslationKey":"webhooks","items":[{"title":"payrollPeriodReady","summary":"Payroll period ready","prefix":{"name":"post","color":"post"},"badges":[],"link":"/payroll/payrollperiodreadyevent","deprecated":false}]}]}]}]}},{"type":"separator","label":"Absence","content":null},{"type":"group","label":"Absence","link":"/openapi/absence","routeSlug":"/openapi/absence","items":[{"label":"Get sick leave status history","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/absence/getsickleavestatushistory","routeSlug":"/openapi/absence/getsickleavestatushistory","metadata":{"seo":{"title":"Get sick leave status history","description":"Requires scope: absence."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"getSickLeaveStatusHistory","name":"Get sick leave status history","isWebhook":false,"pointer":"/paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status-history/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Get sick leave status history","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returns the full status transition history for a sick leave registration, ordered"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"chronologically (earliest first). Each entry represents a status change that occurred"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"during webhook processing or as reported by the external integration partner."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["absence"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"sickLeaveRegistrationId","in":"path","schemaId":"schema_99","description":"The ULID of the sick leave registration.","required":true,"example":"01GYS27FFVTP63WGPV34V1WR6P"}],"pointer":"/paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status-history/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/api/absence/v3/sick-leave/{sickLeaveRegistrationId}/status-history","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[{"name":"sickLeaveRegistrationId","in":"path","required":true,"example":"01GYS27FFVTP63WGPV34V1WR6P","schemaId":"components/schemas/Ulid"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["absence"]}],"responseCodes":["200","400","401"],"pointer":"/api/absence/v3/sick-leave/{sickLeaveRegistrationId}/status-history","href":"absence/getsickleavestatushistory","openApiOperationId":"getSickLeaveStatusHistory","summary":"Get sick leave status history"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK. Returns an empty array if no status history exists.","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_100"}},"schemaId":"schema_100"},{"code":"400","description":"Invalid sick leave registration ID format.","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_101"}},"schemaId":"schema_101"},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status-history/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status-history/get/responses/401/content/application~1json/example"]}],"pointer":"/paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status-history/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_100","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_100"}}},{"code":"400","schemaId":"schema_101","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_101"}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status-history/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status-history/get/responses/401/content/application~1json/example"]}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/absence/getsickleavestatushistory"}],"panels":[]}]},"httpPath":"/api/absence/v3/sick-leave/{sickLeaveRegistrationId}/status-history"},{"label":"List sick leave registrations","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/absence/listsickleaveregistrations","routeSlug":"/openapi/absence/listsickleaveregistrations","metadata":{"seo":{"title":"List sick leave registrations","description":"Requires scope: absence."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listSickLeaveRegistrations","name":"List sick leave registrations","isWebhook":false,"pointer":"/paths/~1api~1absence~1v3~1sick-leave/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List sick leave registrations","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returns a list of sick leave registrations."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["absence"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"query","label":"Query","labelTranslationKey":"query","parameters":[{"name":"startDate","in":"query","schemaId":"schema_84","description":"List sick leave registrations that end after this date.","example":"2026-12-31"},{"name":"endDate","in":"query","schemaId":"schema_84","description":"List sick leave registrations starting before this date.","example":"2026-12-31"},{"name":"officeSlug","in":"query","schemaId":"schema_64","description":"The office name the employee has a contract in.","example":"harborview-grand-hotel"},{"name":"contractGroupLabel","in":"query","schemaId":"schema_64","description":"The contract type name the employee has a contract in.","example":"hospitality-permanent"},{"name":"sortField","in":"query","schemaId":"schema_64","description":"The field to sort the result by. For now this only accepts \"startDate\".","example":"startDate"},{"name":"sortOrder","in":"query","schemaId":"schema_102","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In which direction to sort the results. only allowed values are "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"desc"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (descending) and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"asc"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (ascending)."},"children":[]}]}]}],"example":"desc"},{"name":"page","in":"query","schemaId":"schema_60","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Page number of the paginated result set. The first page is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"1"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}],"pointer":"/paths/~1api~1absence~1v3~1sick-leave/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/api/absence/v3/sick-leave","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[{"name":"startDate","in":"query","required":false,"example":"2026-12-31","schemaId":"components/schemas/Date"},{"name":"endDate","in":"query","required":false,"example":"2026-12-31","schemaId":"components/schemas/Date"},{"name":"officeSlug","in":"query","required":false,"example":"harborview-grand-hotel","schemaId":"schema_64"},{"name":"contractGroupLabel","in":"query","required":false,"example":"hospitality-permanent","schemaId":"schema_64"},{"name":"sortField","in":"query","required":false,"example":"startDate","schemaId":"schema_64"},{"name":"sortOrder","in":"query","required":false,"example":"desc","schemaId":"schema_102"},{"name":"page","in":"query","required":false,"schemaId":"schema_60"}],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["absence"]}],"responseCodes":["200","401","403","404"],"pointer":"/api/absence/v3/sick-leave","href":"absence/listsickleaveregistrations","openApiOperationId":"listSickLeaveRegistrations","summary":"List sick leave registrations"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_103"}},"schemaId":"schema_103"},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1absence~1v3~1sick-leave/get/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1absence~1v3~1sick-leave/get/responses/401/content/application~1json/example"]},{"code":"403","description":"The token is valid but lacks the scope required for this operation.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1absence~1v3~1sick-leave/get/responses/403/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1absence~1v3~1sick-leave/get/responses/403/content/application~1json/example"]},{"code":"404","description":"Invalid page"}],"pointer":"/paths/~1api~1absence~1v3~1sick-leave/get/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_103","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_103"}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1absence~1v3~1sick-leave/get/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1absence~1v3~1sick-leave/get/responses/401/content/application~1json/example"]}}},{"code":"403","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1absence~1v3~1sick-leave/get/responses/403/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1absence~1v3~1sick-leave/get/responses/403/content/application~1json/example"]}}},{"code":"404"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/absence/listsickleaveregistrations"}],"panels":[]}]},"httpPath":"/api/absence/v3/sick-leave"},{"label":"Report sick leave status","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/absence/reportsickleavestatus","routeSlug":"/openapi/absence/reportsickleavestatus","metadata":{"seo":{"title":"Report sick leave status","description":"Requires scope: absence."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"reportSickLeaveStatus","name":"Report sick leave status","isWebhook":false,"pointer":"/paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Report sick leave status","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Report a status update for a sick leave registration. This endpoint is used by external"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"integration partners to report the processing status of a sick leave registration that"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"was sent via webhook."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The status transitions follow a state machine:"},"children":[]}]}]},{"$$mdtype":"Node","type":"list","attributes":{"ordered":false,"marker":"-"},"children":[{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"in_progress"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", The registration is being processed by the external system."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"success"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", The registration was successfully processed (terminal state)."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"failed"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", The registration failed to process. Can be retried by sending a new status."},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Note: The initial statuses "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"new"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"acknowledged"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" are set automatically by Dyflexis"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"when the webhook is sent and received. Only "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"in_progress"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"success"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"failed"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"can be reported via this endpoint."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["absence"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"sickLeaveRegistrationId","in":"path","schemaId":"schema_99","description":"The ULID of the sick leave registration.","required":true,"example":"01GYS27FFVTP63WGPV34V1WR6P"}],"pointer":"/paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_104"}},"schemaId":"schema_104","pointer":"/paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/api/absence/v3/sick-leave/{sickLeaveRegistrationId}/status","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[{"name":"sickLeaveRegistrationId","in":"path","required":true,"example":"01GYS27FFVTP63WGPV34V1WR6P","schemaId":"components/schemas/Ulid"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["absence"]}],"requestBody":{"application/json":{"schemaId":"schema_104"}},"responseCodes":["200","400","401","404","422"],"pointer":"/api/absence/v3/sick-leave/{sickLeaveRegistrationId}/status","href":"absence/reportsickleavestatus","openApiOperationId":"reportSickLeaveStatus","summary":"Report sick leave status"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"schemaId":"schema_104","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_104"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Status reported successfully."},{"code":"400","description":"Invalid request body, invalid ULID format, or unsupported status value.","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_105"}},"schemaId":"schema_105"},{"code":"401","description":"Missing or invalid authentication.\n","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status/post/responses/401/content/application~1json/example"]}},"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status/post/responses/401/content/application~1json/example"]},{"code":"404","description":"No status record found for the given sick leave registration. This means no webhook has been sent for this registration.","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_106"}},"schemaId":"schema_106"},{"code":"422","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Invalid state transition. For example, trying to report "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"in_progress"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" on a registration that is already in "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"success"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" state."},"children":[]}]}]}],"mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_107"}},"schemaId":"schema_107"}],"pointer":"/paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status/post/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200"},{"code":"400","schemaId":"schema_105","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_105"}}},{"code":"401","schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status/post/responses/401/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ApiError","exampleIds":["paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status/post/responses/401/content/application~1json/example"]}}},{"code":"404","schemaId":"schema_106","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_106"}}},{"code":"422","schemaId":"schema_107","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_107"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/absence/reportsickleavestatus"}],"panels":[]}]},"httpPath":"/api/absence/v3/sick-leave/{sickLeaveRegistrationId}/status"},{"type":"separator","label":"Webhooks","variant":"secondary","content":null},{"label":"Sick leave registration event","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/openapi/absence/sickleaveregistrationevent","routeSlug":"/openapi/absence/sickleaveregistrationevent","metadata":{"seo":{"title":"Sick leave registration event","description":"Webhook, Dyflexis sends this POST request to a URL you host. See the Webhooks guide for how to register your receiver and what it must return."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"sickLeaveRegistrationEvent","name":"Sick leave registration event","isWebhook":true,"pointer":"/paths/sickLeaveRegistration/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Sick leave registration event","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"blockquote","attributes":{},"children":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Webhook"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", Dyflexis sends this "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" request to a URL "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"you"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" host. See the "},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"/guides/webhooks"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Webhooks guide"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" for how to register your receiver and what it must return."},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Sends a message when a sick leave registration is created or"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"recovered. Use the envelope field "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" to determine which"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"event you received:"},"children":[]}]}]},{"$$mdtype":"Node","type":"list","attributes":{"ordered":false,"marker":"-"},"children":[{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"sick_leave_created"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", a new sick-leave registration has been"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"filed."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"sick_leave_recovered"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", an existing registration has been"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"closed because the employee recovered."},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The webhook can't be registered with this API. Please register"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"this webhook in Dyflexis."},"children":[]}]}]}]},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/SickLeaveRegistrationWebhookEnvelope"}},"schemaId":"components/schemas/SickLeaveRegistrationWebhookEnvelope","pointer":"/paths/sickLeaveRegistration/post/requestBody","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Sends a message when a sick leave registration is created or recovered. Use the envelope field "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" to determine which event you received."},"children":[]}]}]}]}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"sickLeaveRegistration","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[],"requestBody":{"application/json":{"schemaId":"components/schemas/SickLeaveRegistrationWebhookEnvelope"}},"responseCodes":["200","503"],"pointer":"sickLeaveRegistration","href":"absence/sickleaveregistrationevent","openApiOperationId":"sickLeaveRegistrationEvent","summary":"Sick leave registration event"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"schemaId":"components/schemas/SickLeaveRegistrationWebhookEnvelope","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/SickLeaveRegistrationWebhookEnvelope"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Response code 200 - OK","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_81"}},"schemaId":"schema_81"},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/sickLeaveRegistration/post/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"schema_81","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_81"}}},{"code":"503","schemaId":"schema_59","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/absence/sickleaveregistrationevent"}],"panels":[]}]},"httpPath":"sickLeaveRegistration"}],"content":{"contentType":"group","meta":{"name":"Absence"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Absence","showPageActions":true},{"nodeType":"markdoc","content":"Manage sick-leave registrations: list them, update their status\n(e.g. mark as recovered), and read the full status history of a\nsingle registration."}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/api/absence/v3/sick-leave/{sickLeaveRegistrationId}/status-history","summary":"Get sick leave status history","prefix":{"name":"get","color":"get"},"badges":[],"link":"/absence/getsickleavestatushistory","deprecated":false},{"title":"/api/absence/v3/sick-leave","summary":"List sick leave registrations","prefix":{"name":"get","color":"get"},"badges":[],"link":"/absence/listsickleaveregistrations","deprecated":false},{"title":"/api/absence/v3/sick-leave/{sickLeaveRegistrationId}/status","summary":"Report sick leave status","prefix":{"name":"post","color":"post"},"badges":[],"link":"/absence/reportsickleavestatus","deprecated":false}]},{"kind":"group-items","title":"Webhooks","titleTranslationKey":"webhooks","items":[{"title":"sickLeaveRegistration","summary":"Sick leave registration event","prefix":{"name":"post","color":"post"},"badges":[],"link":"/absence/sickleaveregistrationevent","deprecated":false}]}]}]}]}},{"type":"separator","label":"Employment agency","content":null},{"type":"group","label":"Employment agency","link":"/openapi/employment-agency","routeSlug":"/openapi/employment-agency","items":[{"label":"Submit a human resource","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/employment-agency/submithumanresource","routeSlug":"/openapi/employment-agency/submithumanresource","metadata":{"seo":{"title":"Submit a human resource","description":"Requires scope: setu."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"submitHumanResource","name":"Submit a human resource","isWebhook":false,"pointer":"/paths/~1api~1setu~11.4.1~1humanResource/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Submit a human resource","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The main element of the message, this container holds all elements needed"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"to define a human resource (the person being staffed) in the SETU"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"standard. SETU is the Dutch staffing industry's XML interchange standard."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["setu"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/xml"],"mediaTypeSchemas":{"application/xml":{"schemaId":"schema_108","exampleIds":["paths/~1api~1setu~11.4.1~1humanResource/post/requestBody/content/application~1xml/example"]}},"schemaId":"schema_108","exampleIds":["paths/~1api~1setu~11.4.1~1humanResource/post/requestBody/content/application~1xml/example"],"pointer":"/paths/~1api~1setu~11.4.1~1humanResource/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/api/setu/1.4.1/humanResource","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["setu"]}],"requestBody":{"application/xml":{"schemaId":"schema_108","exampleIds":["paths/~1api~1setu~11.4.1~1humanResource/post/requestBody/content/application~1xml/example"]}},"responseCodes":["200","400","401","403","503"],"pointer":"/api/setu/1.4.1/humanResource","href":"employment-agency/submithumanresource","openApiOperationId":"submitHumanResource","summary":"Submit a human resource"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"schemaId":"schema_108","exampleIds":["paths/~1api~1setu~11.4.1~1humanResource/post/requestBody/content/application~1xml/example"],"mediaTypes":["application/xml"],"mediaTypeSchemas":{"application/xml":{"schemaId":"schema_108","exampleIds":["paths/~1api~1setu~11.4.1~1humanResource/post/requestBody/content/application~1xml/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Human Resource created successfully"},{"code":"400","description":"Bad request - Validation failed","mediaType":"application/xml","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_109"}},"schemaId":"schema_109"},{"code":"401","description":"Invalid authentication token","mediaType":"application/xml","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_110"}},"schemaId":"schema_110"},{"code":"403","description":"Invalid authentication token scope","mediaType":"application/xml","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_111"}},"schemaId":"schema_111"},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/xml","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api~1setu~11.4.1~1humanResource/post/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200"},{"code":"400","schemaId":"schema_109","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_109"}}},{"code":"401","schemaId":"schema_110","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_110"}}},{"code":"403","schemaId":"schema_111","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_111"}}},{"code":"503","schemaId":"schema_59","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/employment-agency/submithumanresource"}],"panels":[]}]},"httpPath":"/api/setu/1.4.1/humanResource"},{"label":"Submit an assignment","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/employment-agency/submitassignment","routeSlug":"/openapi/employment-agency/submitassignment","metadata":{"seo":{"title":"Submit an assignment","description":"Requires scope: setu."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"submitAssignment","name":"Submit an assignment","isWebhook":false,"pointer":"/paths/~1api~1setu~11.4.1~1assignment/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Submit an assignment","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requires scope:"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The main element of the message, this container holds all elements needed"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"to define an assignment (a human resource placed at a staffing customer) in"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the SETU standard."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"apiKey","scopes":["setu"],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/xml"],"mediaTypeSchemas":{"application/xml":{"schemaId":"schema_112","exampleIds":["paths/~1api~1setu~11.4.1~1assignment/post/requestBody/content/application~1xml/example"]}},"schemaId":"schema_112","exampleIds":["paths/~1api~1setu~11.4.1~1assignment/post/requestBody/content/application~1xml/example"],"pointer":"/paths/~1api~1setu~11.4.1~1assignment/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/api/setu/1.4.1/assignment","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"apiKey","type":"apiKey","name":"Authorization","in":"header"}],"scopes":["setu"]}],"requestBody":{"application/xml":{"schemaId":"schema_112","exampleIds":["paths/~1api~1setu~11.4.1~1assignment/post/requestBody/content/application~1xml/example"]}},"responseCodes":["200","400","401","403","503"],"pointer":"/api/setu/1.4.1/assignment","href":"employment-agency/submitassignment","openApiOperationId":"submitAssignment","summary":"Submit an assignment"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"schemaId":"schema_112","exampleIds":["paths/~1api~1setu~11.4.1~1assignment/post/requestBody/content/application~1xml/example"],"mediaTypes":["application/xml"],"mediaTypeSchemas":{"application/xml":{"schemaId":"schema_112","exampleIds":["paths/~1api~1setu~11.4.1~1assignment/post/requestBody/content/application~1xml/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Assignment sent successfully"},{"code":"400","description":"Bad request - Validation failed","mediaType":"application/xml","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_109"}},"schemaId":"schema_109"},{"code":"401","description":"Invalid authentication token","mediaType":"application/xml","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_110"}},"schemaId":"schema_110"},{"code":"403","description":"Invalid authentication token scope","mediaType":"application/xml","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_111"}},"schemaId":"schema_111"},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/xml","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/~1api~1setu~11.4.1~1assignment/post/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200"},{"code":"400","schemaId":"schema_109","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_109"}}},{"code":"401","schemaId":"schema_110","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_110"}}},{"code":"403","schemaId":"schema_111","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_111"}}},{"code":"503","schemaId":"schema_59","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/employment-agency/submitassignment"}],"panels":[]}]},"httpPath":"/api/setu/1.4.1/assignment"},{"type":"separator","label":"Webhooks","variant":"secondary","content":null},{"label":"Time card event","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/openapi/employment-agency/timecardevent","routeSlug":"/openapi/employment-agency/timecardevent","metadata":{"seo":{"title":"Time card event","description":"Webhook, Dyflexis sends this POST request to a URL you host. See the Webhooks guide for how to register your receiver and what it must return."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"timeCardEvent","name":"Time card event","isWebhook":true,"pointer":"/paths/timeCard/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Time card event","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"blockquote","attributes":{},"children":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Webhook"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", Dyflexis sends this "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" request to a URL "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"you"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" host. See the "},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"/guides/webhooks"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Webhooks guide"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" for how to register your receiver and what it must return."},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The main element of the message, this container holds all elements"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"needed to define a time card (the reported hours, allowances and"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"expenses of a human resource for a period)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The webhook can't be registered with this API. Please register"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"this webhook in Dyflexis."},"children":[]}]}]}]},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/xml"],"mediaTypeSchemas":{"application/xml":{"schemaId":"schema_113","exampleIds":["paths/timeCard/post/requestBody/content/application~1xml/example"]}},"schemaId":"schema_113","exampleIds":["paths/timeCard/post/requestBody/content/application~1xml/example"],"pointer":"/paths/timeCard/post/requestBody","description":"The time card payload (reported hours, allowances and expenses of a\nhuman resource for a period). Dyflexis POSTs this body to the URL\nyou host.\n"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"timeCard","servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[],"requestBody":{"application/xml":{"schemaId":"schema_113","exampleIds":["paths/timeCard/post/requestBody/content/application~1xml/example"]}},"responseCodes":["200","400","401","403","503"],"pointer":"timeCard","href":"employment-agency/timecardevent","openApiOperationId":"timeCardEvent","summary":"Time card event"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/openapi","description":"Mock server","isMockServer":true},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant"}}}],"schemaId":"schema_113","exampleIds":["paths/timeCard/post/requestBody/content/application~1xml/example"],"mediaTypes":["application/xml"],"mediaTypeSchemas":{"application/xml":{"schemaId":"schema_113","exampleIds":["paths/timeCard/post/requestBody/content/application~1xml/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Time card received successfully."},{"code":"400","description":"Bad request - Validation failed","mediaType":"application/xml","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_109"}},"schemaId":"schema_109"},{"code":"401","description":"Invalid authentication token","mediaType":"application/xml","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_110"}},"schemaId":"schema_110"},{"code":"403","description":"Invalid authentication token scope","mediaType":"application/xml","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_111"}},"schemaId":"schema_111"},{"code":"503","description":"System temporary unavailable due to maintenance","mediaType":"application/xml","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_59"}},"schemaId":"schema_59"}],"pointer":"/paths/timeCard/post/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200"},{"code":"400","schemaId":"schema_109","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_109"}}},{"code":"401","schemaId":"schema_110","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_110"}}},{"code":"403","schemaId":"schema_111","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_111"}}},{"code":"503","schemaId":"schema_59","mediaTypes":["application/xml"],"mediaTypeContent":{"application/xml":{"schemaId":"schema_59"}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/employment-agency/timecardevent"}],"panels":[]}]},"httpPath":"timeCard"}],"content":{"contentType":"group","meta":{"name":"Employment agency"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Employment agency","showPageActions":true},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"SETU-standard endpoints for staffing companies (employment"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"agencies) integrating with Dyflexis. Implements the Dutch SETU"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"XML standard for Human Resource, Assignment, and Time Card"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"messages. All endpoints accept and return "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"application/xml"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"and require the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" token scope."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"These endpoints are versioned and hosted under"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"/api/setu/{version}/..."},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/api/setu/1.4.1/humanResource","summary":"Submit a human resource","prefix":{"name":"post","color":"post"},"badges":[],"link":"/employment-agency/submithumanresource","deprecated":false},{"title":"/api/setu/1.4.1/assignment","summary":"Submit an assignment","prefix":{"name":"post","color":"post"},"badges":[],"link":"/employment-agency/submitassignment","deprecated":false}]},{"kind":"group-items","title":"Webhooks","titleTranslationKey":"webhooks","items":[{"title":"timeCard","summary":"Time card event","prefix":{"name":"post","color":"post"},"badges":[],"link":"/employment-agency/timecardevent","deprecated":false}]}]}]}]}}],"store":{"schemaStore":{"components/schemas/ClockEvent":{"id":"components/schemas/ClockEvent","kind":"json-schema","title":"ClockEvent","data":{"type":"string","description":"Either \"clocked in\" or \"clocked out\"","example":"clocked in","enum":["clocked in","clocked out"]}},"components/schemas/Contracts":{"id":"components/schemas/Contracts","kind":"json-schema","title":"Contracts","data":{"type":"array","minItems":1,"description":"An array of at least one or more contracts","items":{"$ref":"#/components/schemas/Contract"}}},"components/schemas/Contract":{"id":"components/schemas/Contract","kind":"json-schema","title":"Contract","data":{"type":"object","properties":{"contractReference":{"type":"string","description":"Unique reference to the contract per employee. This could be a serial number or a unique id provided by an external system."},"office":{"type":"integer","description":"Identifier of the Dyflexis office.","example":1},"type":{"type":"integer","description":"Identifier of the Dyflexis contract type","example":1},"start":{"type":"string","example":"2026-01-01","description":"Startdate of contract in YYYY-MM-DD format"},"end":{"example":"2026-12-31","type":"string","description":"Enddate of contract in YYYY-MM-DD format"},"hours":{"type":"number","description":"Contractual hours the employee works in a workweek.","example":40},"days":{"type":"number","description":"Average days the employee works in a workweek.","example":5},"salary":{"type":"number","description":"Remuneration for employment per hour.","example":12.95},"maxHoursPerWeek":{"type":["number","null"],"description":"Max hours the employee works in a workweek (only synchronised when the \"upper limit\" setting is enabled for the contract type).","example":50}}}},"components/schemas/HourStatus":{"id":"components/schemas/HourStatus","kind":"json-schema","title":"HourStatus","data":{"type":"string","description":"Whether the registered hour has been approved, declined, or registered","enum":["approved","declined","registered"]}},"components/schemas/SendPayroll":{"id":"components/schemas/SendPayroll","kind":"json-schema","title":"SendPayroll","data":{"properties":{"queueId":{"type":"integer","description":"Unique queue id.","example":97},"systemName":{"type":"string","description":"Name of the system.","example":"organisation-a"},"officeId":{"type":"integer","description":"Unique identifier of the office.","example":1},"officeName":{"type":"string","description":"Name of the office.","example":"department-b"},"contractTypeGroupName":{"type":"string","description":"contract type.","example":"fixed"},"periodLabel":{"type":"string","description":"The payroll period label. A combination of year followed by the period identifier as configured for your system.","example":"2026-M03"},"targetPeriod":{"type":"string","description":"The period (e.g. a month or a week).","example":"03"},"targetYear":{"type":"string","description":"The year.","example":"2026"}}}},"components/schemas/SickLeaveRegistrationWebhookEnvelope":{"id":"components/schemas/SickLeaveRegistrationWebhookEnvelope","kind":"json-schema","title":"SickLeaveRegistrationWebhookEnvelope","data":{"type":"object","properties":{"type":{"type":"string","description":"Webhook event type.","example":"sick_leave_created","enum":["sick_leave_created","sick_leave_recovered"]},"timestamp":{"type":"string","description":"Event timestamp in ISO 8601 UTC.","example":"2026-02-25T14:20:35Z"},"payload":{"$ref":"#/components/schemas/SickLeaveRegistrationWebhookPayload"}},"required":["type","timestamp","payload"]}},"components/schemas/SickLeaveRegistrationWebhookPayload":{"id":"components/schemas/SickLeaveRegistrationWebhookPayload","kind":"json-schema","title":"SickLeaveRegistrationWebhookPayload","data":{"type":"object","required":["id","employeeId","employeeReference","personnelNumber","startDate","expectedEndDate","endDate","remark","recovered","sickDays"],"properties":{"id":{"type":"string","description":"The id of the sick leave registration.","example":"01GYS27FFVTP63WGPV34V1WR6P"},"employeeId":{"type":"integer","description":"The id of the employee.","example":12},"employeeReference":{"type":["string","null"],"description":"External employee reference used by payroll/customer APIs, or null if not available.","example":"EMP-EXT-123"},"personnelNumber":{"type":["string","null"],"description":"The personnel number of the employee or null if no personnel number exists.","example":"23V600"},"startDate":{"$ref":"#/components/schemas/Date","description":"Start date of sick leave in ISO 8601."},"expectedEndDate":{"$ref":"#/components/schemas/Date","description":"The expected end date of sick leave in ISO 8601."},"endDate":{"type":["string","null"],"description":"The actual registered end date of sick leave in ISO 8601, or null if no end date has been specified.","example":"2026-12-31"},"remark":{"type":["string","null"],"description":"The remark of the sick leave registration, or null if none was given.","example":"sore throat"},"recovered":{"type":"boolean","description":"Indicates whether the employee is recovered.","example":false},"sickDays":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The id of the sick leave registration day.","example":"01GYS27FFVTP63WGPV34V1WR6P"},"date":{"$ref":"#/components/schemas/Date","description":"The date of the sick day in ISO 8601."},"hourType":{"type":"string","description":"The specified hour type for that day.","example":"standard sick leave"}}}}}}},"components/schemas/InformationStreamTimeseries":{"id":"components/schemas/InformationStreamTimeseries","kind":"json-schema","title":"InformationStreamTimeseries","data":{"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Request body for the deprecated PUT /api/timeseries/v3/create endpoint. Uses "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"departments"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (array of integers)."},"children":[]}]}]}],"type":"object","required":["category","granularity","name","type","unit","departments","sourceSystem","sourceSystemSupportEmail"],"properties":{"key":{"type":"string","description":"The key of the existing information stream. If no key is provided, Dyflexis will generate and return the key.","example":"covers-per-hour-pier9"},"type":{"type":"string","description":"Type of the information stream.","example":"workload","enum":["workload","employee_capacity"]},"unit":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Unit of the information stream. If type is \"workload\" any string is allowed. If type is \"employee_capacity\" only 'hours' or 'currency' are allowed."},"children":[]}]}]}],"example":"covers"},"category":{"type":"string","description":"Category of the information stream","example":"realized","enum":["budget","forecast","realized"]},"granularity":{"type":"string","description":"Granularity of the information stream.","example":"hour","enum":["minute","hour","day","week","month","quarter","year"]},"name":{"type":"string","description":"Name of the information stream. Visible for users in Dyflexis.","example":"Pier 9 covers per hour"},"note":{"type":"string","example":"Realised covers per hour at the Pier 9 Bistro, used to drive demand-based scheduling.","description":"Additional notes about the information stream."},"departments":{"type":"array","description":"List of department IDs (integers) linked to the information stream. Required for the deprecated timeseries API.\nTo know which departments are available, use the List Offices endpoint or configure in the forecasting module in Dyflexis.\n","items":{"type":"integer"},"example":[1,2,3]},"attributes":{"type":"object","description":"Additional attributes for the information stream.","example":{"onlyFreeWalkIn":true}},"isActive":{"type":"boolean","description":"Indicates whether the information stream is visible for operations.","example":true},"sourceSystem":{"type":"string","description":"Source system of the 3rd party tech provider.","example":"Hospitality POS solutions"},"sourceSystemSupportEmail":{"type":"string","description":"Support email address of the tech partner.","example":"techsupport@techpartner.com"}}}},"components/schemas/InformationStream":{"id":"components/schemas/InformationStream","kind":"json-schema","title":"InformationStream","data":{"type":"object","required":["category","name","type","isActive","sourceSystem","sourceSystemSupportEmail"],"properties":{"key":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The key of the existing information stream."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"If no key parameter is given, Dyflexis will create a new information stream and return the generated stream key."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Only information streams with source "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"api"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" can be updated through this endpoint."},"children":[]}]}]}],"example":"covers-per-hour-pier9"},"type":{"type":"string","description":"Type of the information stream.","example":"workload","enum":["workload","staff"]},"unit":{"type":"string","description":"Unit of the information stream\nIf type is \"workload\": any string value is allowed. String value 'revenue' will automatically display the currency icon in Dyflexis.\nIf type is \"staff\": only types 'hours' or 'currency' are allowed.\n","example":"covers"},"category":{"type":"string","description":"Category of the information stream","example":"realized","enum":["budget","forecast","realized"]},"granularity":{"type":"string","description":"Granularity of the information stream.\nRequired when creating a new information stream.\nOptional when updating an existing information stream. If provided on update, it must match the existing granularity.\nChanging granularity through this endpoint is not supported.\n","example":"hour","enum":["hour","day","week","month","quarter","year"]},"name":{"type":"string","description":"Name of the information stream. Visible for users in Dyflexis.","example":"Pier 9 covers per hour"},"note":{"type":"string","example":"Realised covers per hour at the Pier 9 Bistro, used to drive demand-based scheduling.","description":"Additional notes about the information stream."},"departmentIds":{"type":"array","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"List of department, department group, or location IDs linked to the information stream. Optional."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"A department group or location is automatically expanded to its active child departments; the group or location ID itself is not linked. An explicitly listed department is always linked, even when archived. A non-empty selection that resolves to no active departments is rejected."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The linked departments are stored as a snapshot at the moment of the request; later changes to the organizational structure do not change the departments already linked to an existing information stream."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"On create, may be omitted to create a stream without linked departments."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"On update, only applied when a non-empty list is provided; omitting it (or sending an empty list) leaves the existing departments unchanged."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Department, department group, and location IDs can be looked up by fetching the department tree with "},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"#tag/Offices-and-departments/operation/getDepartmentTree"},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"GET /api/department-management/v3/tree"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; this requires a token with the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" scope."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Can also be configured manually in the frontend of the forecasting module in Dyflexis."},"children":[]}]}]}],"items":{"type":"integer"},"example":[1,2,3]},"isActive":{"type":"boolean","description":"Indicates whether the information stream is visible for operations or not (if 'true', it will be visible for the performance dashboard, reporting, scheduling).","example":true},"sourceSystem":{"type":"string","description":"Source system of the 3rd party tech provider.","example":"Hospitality POS solutions"},"sourceSystemSupportEmail":{"type":"string","description":"Support email address of the tech partner.","example":"techsupport@techpartner.com"}}}},"components/schemas/InformationStreamData":{"id":"components/schemas/InformationStreamData","kind":"json-schema","title":"InformationStreamData","data":{"type":"object","required":["period","value"],"properties":{"granularity":{"type":"string","description":"Granularity of the information stream object.\n\nWhen data is inserted, it needs to match the granularity of the information stream or be of coarser granularity. For example, if the information stream has a granularity of 'hour', the granularity of the data sent cannot be 'minute' (finer granularity). Optionally the coarser data can be made finer by dividing it according to a default trend (see trends endpoint below).\n","example":"hour","enum":["minute","hour","day","week","month","quarter","year"]},"period":{"type":"string","example":"2026-04-02 11:05:00","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Timeframe period covered by the inserted data."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Allowed values (by granularity):"},"children":[]}]}]},{"$$mdtype":"Node","type":"list","attributes":{"ordered":false,"marker":"-"},"children":[{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"minute (e.g. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"2026-04-02 11:05:00"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")"},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"hour (e.g. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"2026-04-02 11:05:00"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")"},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"day (e.g. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"2026-04-02"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")"},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"week (e.g. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"2026-W09"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")"},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"month (e.g. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"2026-M05"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")"},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"quarter (e.g. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"2026-Q02"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")"},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"year (e.g. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"2026"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Notes:"},"children":[]}]}]},{"$$mdtype":"Node","type":"list","attributes":{"ordered":false,"marker":"-"},"children":[{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Seconds in timestamps are ignored. Only one data point per minute is allowed (if two points have the same minute, the latter will overwrite the former)."},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"period"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" should specify the lower bound of the time window, where the window is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"granularity"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" long. For example, if "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"granularity=\"hour\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", the value at "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"period=\"2026-04-02 11:00:00\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" should indicate the value between \"2026-04-02 11:00:00\" and \"2026-04-02 12:00:00\"."},"children":[]}]}]}]}]},"value":{"description":"Numeric value of the information stream data record.","example":25,"oneOf":[{"type":"number"},{"type":"string","description":"Numeric strings are also accepted by current backend validation."}]},"lowerBound":{"type":"number","description":"Lower bound of value. Only available if category is 'forecast'.","example":20},"upperBound":{"type":"number","description":"Upper bound of value. Only available if category is 'forecast'.","example":28}}}},"components/schemas/InformationStreamDataV3":{"id":"components/schemas/InformationStreamDataV3","kind":"json-schema","title":"InformationStreamDataV3","data":{"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Request body item for "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /information-streams/v3/datapoint/{key}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Differences from "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"InformationStreamData"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (deprecated timeseries upsert):"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" If "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"granularity"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is sent, it must "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"exactly match"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" the stream’s configured granularity, the deprecated API still allowed "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"coarser"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" payloads to be split across finer periods."},"children":[]}]}]}],"type":"object","required":["period","value"],"properties":{"granularity":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Optional. When set, must "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"exactly equal"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" the information stream’s configured granularity (otherwise "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"400"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"If omitted, the stream’s configured granularity is used."},"children":[]}]}]}],"example":"hour","enum":["hour","day","week","month","quarter","year"]},"period":{"type":"string","example":"2026-04-02 11:00:00","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Timeframe for the data point, aligned to the stream’s granularity (see "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"granularity"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Formats (by configured stream granularity):"},"children":[]}]}]},{"$$mdtype":"Node","type":"list","attributes":{"ordered":false,"marker":"-"},"children":[{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"hour"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"yyyy-mm-dd hh:mm:ss"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (time is normalized to the start of the hour; seconds are not significant beyond that)"},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"day"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"yyyy-mm-dd"},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"week"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"yyyy-Www"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (ISO week, e.g. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"2026-W09"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")"},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"month"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"yyyy-Mmm"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (e.g. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"2026-M05"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")"},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"quarter"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"yyyy-Qq"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (e.g. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"2026-Q2"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")"},"children":[]}]}]},{"$$mdtype":"Node","type":"item","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"year"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"yyyy"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The period denotes the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"start"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" of the bucket (lower bound of the interval covered by that granularity)."},"children":[]}]}]}]},"value":{"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Numeric value for the data point, including "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"0"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", which is "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"stored"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" as a real value for this "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"period"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (distinct from a point that was never sent)."},"children":[]}]}]}],"example":25,"oneOf":[{"type":"number"},{"type":"string","description":"Numeric strings are also accepted by current backend validation."}]},"lowerBound":{"type":"number","description":"Lower bound of value.","example":20},"upperBound":{"type":"number","description":"Upper bound of value.","example":28}}}},"components/schemas/WorkingPattern":{"id":"components/schemas/WorkingPattern","kind":"json-schema","title":"WorkingPattern","data":{"type":"object","properties":{"startDate":{"type":"string","format":"date","description":"Start date of the working pattern","example":"2026-12-01"},"startWeek":{"type":"integer","description":"The week of the working pattern cycle that is used on the start date. Start week may not be greater than the number of weeks","example":1},"weeks":{"type":"array","minItems":1,"maxItems":20,"description":"Working pattern weeks","items":{"$ref":"#/components/schemas/Week"}}}}},"components/schemas/Week":{"id":"components/schemas/Week","kind":"json-schema","title":"Week","data":{"type":"object","properties":{"monday":{"$ref":"#/components/schemas/NumericDay"},"tuesday":{"$ref":"#/components/schemas/NumericDay"},"wednesday":{"$ref":"#/components/schemas/NumericDay"},"thursday":{"$ref":"#/components/schemas/NumericDay"},"friday":{"$ref":"#/components/schemas/NumericDay"},"saturday":{"$ref":"#/components/schemas/NumericDay"},"sunday":{"$ref":"#/components/schemas/NumericDay"}}}},"components/schemas/NumericDay":{"id":"components/schemas/NumericDay","kind":"json-schema","title":"NumericDay","data":{"type":"object","properties":{"contractHours":{"type":"number","format":"float","description":"Number of contract hours","example":8}}}},"components/schemas/NameFormat":{"id":"components/schemas/NameFormat","kind":"json-schema","title":"NameFormat","data":{"description":"Defines how the employee name should be displayed in Dyflexis","oneOf":[{"type":"string","enum":["mine","partner","mine-partner","partner-mine"]}]}},"components/schemas/MaritalStatus":{"id":"components/schemas/MaritalStatus","kind":"json-schema","title":"MaritalStatus","data":{"type":"string","description":"Whether the employee is single, married, living together or permanently separated","oneOf":[{"type":"string","enum":["single","married","living-together","permanently-separated","registered-partnership","widowed"]}]}},"components/schemas/Gender":{"id":"components/schemas/Gender","kind":"json-schema","title":"Gender","data":{"type":"string","oneOf":[{"type":"string","enum":["male","female"]}]}},"components/schemas/Date":{"id":"components/schemas/Date","kind":"json-schema","title":"Date","data":{"type":"string","example":"2026-12-31"}},"components/schemas/ApiError":{"id":"components/schemas/ApiError","kind":"json-schema","title":"ApiError","data":{"type":"object","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Standard JSON error body, returned only when the request sends an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Accept: application/json"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header (otherwise an HTML error page may be"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"returned). "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"title"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"status"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"message"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" are always present. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"detail"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"code"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" are returned by some backend versions and may be absent."},"children":[]}]}]}],"required":["title","status","message"],"properties":{"title":{"type":"string","description":"Short, human-readable summary of the error.","example":"Unauthorized"},"status":{"type":"integer","description":"The HTTP status code.","example":401},"message":{"type":"string","description":"Human-readable explanation of this occurrence of the error.","example":"Invalid Token"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence. Not returned by all backend versions.","example":"Invalid Token"},"code":{"type":"integer","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The HTTP status code (duplicate of "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"status"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"). Not returned by all backend versions."},"children":[]}]}]}],"example":401}}}},"components/schemas/Email":{"id":"components/schemas/Email","kind":"json-schema","title":"Email","data":{"type":"string","format":"email","example":"john.doe@example.com"}},"components/schemas/UTC_DateTimeOrNull":{"id":"components/schemas/UTC_DateTimeOrNull","kind":"json-schema","title":"UTC_DateTimeOrNull","data":{"type":["string","null"],"example":"2026-01-01T00:00:00Z","description":"DateTime in UTC ISO 8601 format"}},"components/schemas/Department":{"id":"components/schemas/Department","kind":"json-schema","title":"Department","data":{"type":"object","properties":{"id":{"type":"integer","example":1},"name":{"type":"string"},"type":{"type":"string","description":"Defines the type of organizational unit","example":"department","enum":["office","department_group","department"]},"created":{"$ref":"#/components/schemas/UTC_DateTimeOrNull"},"modified":{"$ref":"#/components/schemas/UTC_DateTimeOrNull"},"costCenterId":{"type":["string","null"],"example":"123"},"active":{"type":"boolean","description":"Indicates whether the department is currently active","example":true}}}},"components/schemas/UTC_DateTime":{"id":"components/schemas/UTC_DateTime","kind":"json-schema","title":"UTC_DateTime","data":{"type":"string","example":"2026-01-01T00:00:00Z","description":"DateTime in UTC ISO 8601 format"}},"components/schemas/ValidationError":{"id":"components/schemas/ValidationError","kind":"json-schema","title":"ValidationError","data":{"allOf":[{"$ref":"#/components/schemas/ApiError"},{"type":"object","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returned when request validation fails. In addition to the base error"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"fields, validation failures carry per-field detail. The exact structure"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"depends on the backend version: some versions return a "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"violations"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"array, others a "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"violationList"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" object together with an "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"errors"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" array."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Read whichever is present."},"children":[]}]}]}],"properties":{"type":{"type":"string","description":"URI reference identifying the error type, when present.","example":"https://tools.ietf.org/html/rfc2616#section-10"},"violations":{"type":"array","description":"Per-field validation failures (one backend variant).","items":{"type":"object","properties":{"propertyPath":{"type":"string","example":"employeeId"},"title":{"type":"string","example":"This value should not be null."},"type":{"type":["string","null"]}}}},"violationList":{"type":"object","description":"Per-field validation failures keyed by field name (another backend variant).","additionalProperties":{"type":"array","items":{"type":"string"}}},"errors":{"type":"array","description":"Per-field validation failures (another backend variant).","items":{"type":"object","properties":{"message":{"type":"string","example":"This value should not be null."},"code":{"type":["string","null"],"description":"Machine-readable violation code."},"context":{"type":"object","properties":{"field":{"type":["string","null"]}}}}}}}}]}},"components/schemas/DateTime":{"id":"components/schemas/DateTime","kind":"json-schema","title":"DateTime","data":{"type":"string","example":"2026-12-31T12:34:56+01:00","description":"DateTime in ISO 8601 format"}},"components/schemas/PayrollStatus":{"id":"components/schemas/PayrollStatus","kind":"json-schema","title":"PayrollStatus","data":{"description":"The new status for the queue item","oneOf":[{"type":"string","description":"One of \"in progress\", \"success\", \"failed\", \"partial\"","enum":["in progress","success","failed","partial"]}]}},"components/schemas/Ulid":{"id":"components/schemas/Ulid","kind":"json-schema","title":"Ulid","data":{"type":"string","description":"A ULID (Universally Unique Lexicographically Sortable Identifier): 26 characters of Crockford base32.","pattern":"^[0-9A-HJKMNP-TV-Z]{26}$","example":"01GYS27FFVTP63WGPV34V1WR6P"}},"components/schemas/InformationStreamListItem":{"id":"components/schemas/InformationStreamListItem","kind":"json-schema","title":"InformationStreamListItem","data":{"type":"object","properties":{"key":{"type":"string","description":"Identifier of the information stream","example":"bar-revenue-pier9"},"isActive":{"type":"boolean","description":"Indicates if the information stream is active","example":true},"source":{"type":"string","description":"Source of the information stream","example":"user_provided"},"type":{"type":"string","description":"Type of the information stream","example":"revenue"},"granularity":{"type":"string","description":"Granularity of the information stream","example":"day"},"category":{"type":"string","description":"Category of the information stream","example":"realized"},"departments":{"type":"array","items":{"type":"integer"},"description":"List of departments IDs associated with the information stream","example":[1,2]},"unit":{"type":"string","description":"Unit of the information stream","example":"currency"},"name":{"type":"string","description":"Name of the information stream","example":"Pier 9 bar revenue"},"note":{"type":["string","null"],"description":"Additional notes about the information stream, or null when none is set.","example":"Daily bar revenue at the Pier 9 Bistro"},"sourceSystem":{"type":["string","null"],"description":"Source system of the information stream, or null for system-generated streams (e.g. AI forecasts).","example":"Hospitality POS solutions"},"sourceSystemSupportEmail":{"type":["string","null"],"description":"Email address of the source system support, or null for system-generated streams.","example":"support@hospitality-pos.example.com"},"createdAt":{"type":"string","description":"Creation timestamp of the information stream","example":"2026-07-03 13:23:31"},"updatedAt":{"type":"string","description":"Last modification timestamp of the information stream","example":"2026-07-03 13:23:31"},"customFeatures":{"type":"array","items":{"type":"string"},"description":"Custom features associated with the information stream","example":["feature1","feature2"]},"formulaParents":{"type":"array","description":"Keys of the parent streams that feed this stream in a formula hierarchy. Always present; empty when the stream has no formula parents.","items":{"type":"string"}}}}},"schema_57":{"kind":"json-schema","data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","example":1},"name":{"type":"string"},"type":{"type":"string","description":"Defines the type of organizational unit","example":"office","enum":["office","department_group","department"]},"created":{"$ref":"#/components/schemas/UTC_DateTimeOrNull"},"modified":{"$ref":"#/components/schemas/UTC_DateTimeOrNull"},"addressId":{"type":["string","null"],"example":"1"},"costCenterId":{"type":["string","null"],"example":"123"},"costCenterName":{"type":["string","null"],"example":"Harborview Grand Hotel"},"active":{"type":"boolean","description":"Indicates whether the location is currently active","example":true},"departmentGroups":{"type":"array","description":"An array representing department groups that belong to a specific location.","items":{"type":"object","properties":{"id":{"type":"integer","example":1},"name":{"type":"string"},"type":{"type":"string","description":"Defines the type of organizational unit","example":"department_group","enum":["office","department_group","department"]},"created":{"$ref":"#/components/schemas/UTC_DateTimeOrNull"},"modified":{"$ref":"#/components/schemas/UTC_DateTimeOrNull"},"costCenterId":{"type":["string","null"],"example":"124"},"costCenterName":{"type":["string","null"],"example":"Food &amp; Beverage"},"active":{"type":"boolean","description":"Indicates whether the department group is currently active","example":true},"departmentGroups":{"type":"array","description":"An array representing department groups that belong to a specific department group.","items":{"type":"object"}},"departments":{"type":"array","description":"An array representing departments that belong to a specific department group.","items":{"$ref":"#/components/schemas/Department"}}}}},"departments":{"type":"array","description":"An array representing departments that belong to a specific location.","items":{"$ref":"#/components/schemas/Department"}}}}},"id":"schema_57"},"schema_58":{"kind":"json-schema","data":{"type":"object","properties":{"offices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"The unique office id used by Dyflexis, usable wherever the office id is needed","example":1},"name":{"type":"string","description":"Name of the office","example":"Harborview Grand Hotel"}}}}}},"id":"schema_58"},"schema_59":{"kind":"json-schema","data":{"type":"object","description":"Response code 503 - unavailable due to maintenance"},"id":"schema_59"},"schema_60":{"kind":"json-schema","data":{"type":"integer","minimum":1,"default":1},"id":"schema_60"},"schema_61":{"kind":"json-schema","data":{"type":"boolean"},"id":"schema_61"},"schema_62":{"kind":"json-schema","data":{"type":"object","properties":{"_links":{"type":"object","properties":{"self":{"type":"object","properties":{"href":{"type":"string","description":"link to current page","example":"https://app.dyflexis.com/{systemName}/api/business/v3/employees?page=2"}}},"next":{"type":"object","properties":{"href":{"type":["string","null"],"description":"link to next page","example":"https://app.dyflexis.com/{systemName}/api/business/v3/employees?page=3"}}},"prev":{"type":"object","properties":{"href":{"type":["string","null"],"description":"link to previous page","example":"https://app.dyflexis.com/{systemName}/api/business/v3/employees?page=1"}}},"first":{"type":"object","properties":{"href":{"type":"string","description":"link to first page","example":"https://app.dyflexis.com/{systemName}/api/business/v3/employees?page=1"}}},"last":{"type":"object","properties":{"href":{"type":"string","description":"link to last page","example":"https://app.dyflexis.com/{systemName}/api/business/v3/employees?page=100"}}}}},"pageCount":{"type":"integer","description":"number of pages","example":100},"employees":{"type":"array","items":{"type":"object","properties":{"employeeId":{"type":"integer","description":"Internal employee id used by Dyflexis","example":1},"initials":{"type":["string","null"],"description":"Initials","example":"J"},"firstName":{"type":["string","null"],"description":"First name","example":"Maria"},"lastNamePrefix":{"type":["string","null"],"description":"Prefix","example":"de"},"lastName":{"type":["string","null"],"description":"Last name","example":"Santos"},"nameFormat":{"oneOf":[{"$ref":"#/components/schemas/NameFormat"},{"type":"null"}],"description":"Null when no name format is set for the employee."},"maritalStatus":{"oneOf":[{"$ref":"#/components/schemas/MaritalStatus"},{"type":"null"}],"description":"Null when no marital status is set for the employee."},"partnerInitials":{"type":["string","null"],"description":"Partner initials","example":"A"},"partnerFirstName":{"type":["string","null"],"description":"First name of partner","example":"Anne"},"partnerLastNamePrefix":{"type":["string","null"],"description":"Prefix of partner","example":"van"},"partnerLastName":{"type":["string","null"],"description":"Last name of partner","example":"Ferguson"},"gender":{"oneOf":[{"$ref":"#/components/schemas/Gender"},{"type":"null"}],"description":"Null when no gender is set for the employee."},"phoneNumber":{"type":["string","null"],"description":"Primary phone number","example":"+31 6 12345678"},"phoneNumber2":{"type":["string","null"],"description":"Secondary phone number","example":"+31 20 5550100"},"email":{"type":["string","null"],"description":"Email address","example":"john.doe@example.com"},"employmentStart":{"type":["string","null"],"description":"The first day of employment in ISO 8601","example":"2026-12-31"},"employmentEnd":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The last day of employment in ISO 8601, or the sentinel "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"0000-00-00"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" when employment is open-ended (no end date)."},"children":[]}]}]}],"example":"0000-00-00"},"personnelNumber":{"type":["string","null"],"description":"The personnel number as known by the connecting party","example":"HV-014"},"costCenter":{"type":["string","null"],"description":"Cost center for the employee","example":"Harborview Grand Hotel"},"probationDate":{"type":["string","null"],"description":"The probationary period end date in ISO 8601","example":"2026-12-31"},"employerReferenceId":{"type":["string","null"],"description":"Unique employer reference identifier as known by the connecting party","example":"HV-FD-014"},"labels":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Unique identifier of the label","example":10},"name":{"type":"string","description":"Name of the label","example":"Label 1"},"showOnSchedule":{"type":"boolean","description":"true if the label should be shown on the scheduling page","example":true},"groupId":{"type":"integer","description":"Unique identifier of the group, where the label falls into","example":5},"groupName":{"type":"string","description":"Name of the group, where the label falls into","example":"Label 1"},"endDate":{"anyOf":[{"$ref":"#/components/schemas/Date"},{"type":"null"}],"description":"End date of the label for this employee"}}}},"cardNumbers":{"type":"array","description":"The card numbers associated with this employee","items":{"type":"string","example":"01234567"}}}}}}},"id":"schema_62"},"schema_63":{"kind":"json-schema","data":{"type":"object","properties":{"employeeMappings":{"type":"array","items":{"type":"object","properties":{"dyflexisId":{"type":"integer","description":"The unique employee id used by Dyflexis","example":1},"personnelNumber":{"type":"string","description":"The personnel number as known by the connecting party","example":"243-a"}}}}}},"id":"schema_63"},"schema_64":{"kind":"json-schema","data":{"type":"string"},"id":"schema_64"},"schema_65":{"kind":"json-schema","data":{"required":["lastName"],"type":"object","properties":{"initials":{"type":"string","example":"J"},"firstName":{"type":"string","example":"Maria"},"lastNamePrefix":{"type":"string","example":"de"},"lastName":{"type":"string","example":"Santos"},"nameFormat":{"$ref":"#/components/schemas/NameFormat"},"maritalStatus":{"$ref":"#/components/schemas/MaritalStatus"},"partnerInitials":{"type":"string","example":"A"},"partnerFirstName":{"type":"string","example":"Anne"},"partnerLastNamePrefix":{"type":"string","example":"van"},"partnerLastName":{"type":"string","example":"Ferguson"},"gender":{"$ref":"#/components/schemas/Gender"},"phoneNumber":{"type":"string","example":"+31 6 12345678","description":"Primary phone number"},"phoneNumber2":{"type":"string","example":"+31 20 5550100","description":"Secondary phone number"},"email":{"$ref":"#/components/schemas/Email"},"dateOfBirth":{"$ref":"#/components/schemas/Date"},"placeOfBirth":{"type":"string","example":"Pier 9 Bistro"},"streetName":{"type":"string","example":"Damrak"},"streetNumber":{"type":"string","example":"70"},"postalCode":{"type":"string","example":"1012 LM"},"city":{"type":"string","example":"Pier 9 Bistro"},"nationality":{"type":"string","example":"Portuguese"},"employmentStart":{"$ref":"#/components/schemas/Date","description":"The first day of employment"},"employmentEnd":{"$ref":"#/components/schemas/Date","description":"The last day of employment"},"personnelNumber":{"type":"string","description":"The personnel number as known by the connecting party","example":"HV-014"},"costCenter":{"type":"string","description":"Cost center for the employee","example":"Harborview Grand Hotel"},"probationDate":{"$ref":"#/components/schemas/Date","description":"The probationary period end date"},"employerReferenceId":{"type":"string","description":"Unique employer reference identifier as known by the connecting party","example":"HV-FD-014"},"jobDescription":{"type":"string","description":"A textual description of the employee's job","example":"Front desk receptionist"}}},"id":"schema_65"},"schema_66":{"kind":"json-schema","data":{"type":"array","items":{}},"id":"schema_66"},"schema_67":{"kind":"json-schema","data":{"oneOf":[{"type":"object","title":"Warning","required":["status","data"],"properties":{"status":{"type":"string","enum":["warning"],"description":"Always \"warning\"."},"data":{"type":"array","items":{"type":"object","required":["fieldName","value"],"properties":{"fieldName":{"type":"string","description":"The name of the field that contained incorrect data."},"value":{"type":"string","description":"The value we tried to save."}}}}},"example":{"status":"warning","data":[{"fieldName":"email","value":"john@example"}]}},{"type":"object","title":"Error","required":["status","data"],"properties":{"status":{"type":"string","enum":["error"],"description":"Always \"error\"."},"data":{"type":"string","description":"The error message. May be an empty string when no detail is provided."}},"example":{"status":"error","data":""}}]},"id":"schema_67"},"schema_68":{"kind":"json-schema","data":{"type":"object","properties":{"contractTypes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"The unique contract type id used by Dyflexis","example":1},"name":{"type":"string","description":"Contract type name","example":"Hospitality permanent"},"fixedBase":{"type":"boolean","description":"Whether or not the contract type uses a fixed base","example":true}}}}}},"id":"schema_68"},"schema_69":{"kind":"json-schema","data":{"oneOf":[{"title":"Warning","type":"object","required":["status"],"properties":{"status":{"type":"string","enum":["warning"],"description":"Always \"warning\""},"warnings":{"description":"Warning per contract","type":"array","items":{"type":"object","properties":{"contractReference":{"type":"string","description":"Unique contract reference"},"type":{"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Warning type, either \"invalid_data\" or \"overlap\""},"children":[]}]}]}],"oneOf":[{"type":"string","enum":["invalid_data","overlap"]}]},"data":{"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Validation detail for this contract. Depending on the warning"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"type and backend version this is either an object keyed by field"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"name (with the offending values), or an array (invalid-field"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"objects for "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"invalid_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", contract references for "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"overlap"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")."},"children":[]}]}]}]}}}}}},{"title":"Error","type":"object","required":["status"],"properties":{"status":{"type":"string","enum":["error"],"description":"Always \"error\"."},"data":{"type":"string","description":"The error message."}}}]},"id":"schema_69"},"schema_70":{"kind":"json-schema","data":{"type":"string","enum":["realized","forecast","budget"]},"id":"schema_70"},"schema_71":{"kind":"json-schema","data":{"type":"string","enum":["category","department"]},"id":"schema_71"},"schema_72":{"kind":"json-schema","data":{"type":"integer"},"id":"schema_72"},"schema_73":{"kind":"json-schema","data":{"type":"array","items":{"type":"string"}},"id":"schema_73"},"schema_74":{"kind":"json-schema","data":{"type":"array","items":{"type":"string","enum":["realized","forecast","budget"]}},"id":"schema_74"},"schema_75":{"kind":"json-schema","data":{"oneOf":[{"type":"array","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Ungrouped result, returned when "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"groupBy"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is not provided."},"children":[]}]}]}],"items":{"$ref":"#/components/schemas/InformationStreamListItem"}},{"type":"object","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Grouped result, returned when "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"groupBy"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is provided."},"children":[]}]}]}],"properties":{"groups":{"type":"array","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The grouping buckets for the requested "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"groupBy"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"items":{"type":"object","properties":{"groupId":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Identifier of the group; its composition depends on the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"groupBy"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (e.g. office-and-category)."},"children":[]}]}]}],"example":"18-forecast"},"label":{"type":"string","description":"Human-readable label for the group.","example":"Amsterdam"},"category":{"type":"string","description":"Category of the streams in this group.","example":"forecast"},"departments":{"type":"array","description":"Department identifiers covered by this group.","items":{"type":"string"},"example":["01KMQK8WKA3Z5HTY35TNB6B55D"]},"departmentNames":{"type":"object","description":"Map of department identifier to department name.","additionalProperties":{"type":"string"},"example":{"01KMQK8WKA3Z5HTY35TNB6B55D":"Department D"}},"streams":{"type":"array","description":"Keys of the information streams in this group.","items":{"type":"string"},"example":["01KPB4Z004Q6JDNYXPT3739YA3"]}}}},"streams":{"type":"array","description":"The information streams in the result.","items":{"$ref":"#/components/schemas/InformationStreamListItem"}}}}]},"id":"schema_75"},"schema_76":{"kind":"json-schema","data":{"type":"string","format":"date"},"id":"schema_76"},"schema_77":{"kind":"json-schema","data":{"type":"string","enum":["hour","day","week","month","quarter","year"]},"id":"schema_77"},"schema_78":{"kind":"json-schema","data":{"type":"object","description":"Response where top-level keys are granularities (e.g., hour, day)","additionalProperties":{"type":"object","description":"Map of timestamp strings to data point objects for that granularity","additionalProperties":{"type":"object","properties":{"value":{"type":"number","description":"The main data point value"},"lower_bound":{"type":"number","description":"Lower confidence bound"},"upper_bound":{"type":"number","description":"Upper confidence bound"}},"required":["value","lower_bound","upper_bound"]}}},"id":"schema_78"},"schema_79":{"kind":"json-schema","data":{"type":"object","properties":{"message":{"type":"string","description":"The error message","example":"Invalid request data"}}},"id":"schema_79"},"schema_80":{"kind":"json-schema","data":{"type":"object","properties":{"error":{"type":"string","example":"An unexpected error occurred while processing the request."},"status":{"type":"string","example":"GENERAL_EXCEPTION"}}},"id":"schema_80"},"schema_81":{"kind":"json-schema","data":{"type":"object","description":"Response code 200 - OK"},"id":"schema_81"},"schema_82":{"kind":"json-schema","data":{"type":"object","properties":{"key":{"type":"string","description":"The Dyflexis generated information stream key"}}},"id":"schema_82"},"schema_83":{"kind":"json-schema","data":{"type":"array","items":{"$ref":"#/components/schemas/InformationStreamDataV3"}},"id":"schema_83"},"schema_84":{"kind":"json-schema","data":{"$ref":"#/components/schemas/Date"},"id":"schema_84"},"schema_85":{"kind":"json-schema","data":{"type":"object","properties":{"_links":{"type":"object","properties":{"self":{"type":"object","properties":{"href":{"type":"string","description":"link to current page","example":"https://app.dyflexis.com/{systemName}/api/business/v3/scheduled?page=2"}}},"next":{"type":"object","properties":{"href":{"type":["string","null"],"description":"link to next page","example":"https://app.dyflexis.com/{systemName}/api/business/v3/scheduled?page=3"}}},"prev":{"type":"object","properties":{"href":{"type":["string","null"],"description":"link to previous page","example":"https://app.dyflexis.com/{systemName}/api/business/v3/scheduled?page=1"}}},"first":{"type":"object","properties":{"href":{"type":"string","description":"link to first page","example":"https://app.dyflexis.com/{systemName}/api/business/v3/scheduled?page=1"}}},"last":{"type":"object","properties":{"href":{"type":"string","description":"link to last page","example":"https://app.dyflexis.com/{systemName}/api/business/v3/scheduled?page=100"}}}}},"shifts":{"type":"array","description":"Collection of all shifts","items":{"type":"object","properties":{"id":{"type":"integer","description":"Internal shift id used by Dyflexis","example":1},"employeeId":{"type":"integer","description":"Internal employee id used by Dyflexis","example":1},"personnelNumber":{"type":"string","description":"External employee id used by the client","example":"HV-FD-014"},"firstName":{"type":"string","description":"First name","example":"Maria"},"infix":{"type":["string","null"],"description":"Infix (name particle), or null when the employee has none. May also be an empty string.","example":"de"},"lastName":{"type":"string","description":"Surname","example":"Santos"},"contractTypeId":{"type":["integer","null"],"description":"Internal contract type id used by Dyflexis","example":123},"contractType":{"type":["string","null"],"description":"The name of the contract type the employee has","example":"Hospitality permanent"},"officeId":{"type":"integer","description":"The id of the office the shift has been scheduled in","example":1},"officeName":{"type":"string","description":"The name of the office the shift has been scheduled in","example":"Harborview Grand Hotel"},"departmentId":{"type":"integer","description":"The id of the department the shift has been scheduled in","example":1},"departmentName":{"type":"string","description":"The name of the department the shift has been scheduled in","example":"Front Desk"},"costCenterId":{"type":["integer","null"],"description":"The id of the cost center associated with the shift","example":1},"costCenterName":{"type":["string","null"],"description":"The name of the cost center associated with the shift","example":"Name"},"costCenterCode":{"type":["string","null"],"description":"The code of the cost center associated with the shift","example":"code"},"startDateTime":{"$ref":"#/components/schemas/DateTime"},"endDateTime":{"$ref":"#/components/schemas/DateTime"},"breakMinutes":{"type":"integer","description":"The break time of the shift in minutes, 0 if no break.","example":30},"duration":{"type":"integer","description":"The shift time in minutes.","example":480},"remark":{"type":"string","description":"The shift remark, empty string if not used","example":"Remark"},"marking":{"type":"string","description":"The shift marking, or an empty string when the shift has no marking.","example":"sick","enum":["","leave","sick","standBy","cancelled"]},"published":{"type":"boolean","description":"Will show if the shift is published to the schedule"},"isOpenShift":{"type":"boolean","description":"True if the shift is open (not assigned to an employee)"}}}},"pageCount":{"type":"integer","description":"amount of pages","example":100}}},"id":"schema_85"},"schema_86":{"kind":"json-schema","data":{"type":"object","properties":{"api":{"type":"object","description":"Metadata about the API call (server time, request timing, etc.)."},"response":{"type":"object","properties":{"data":{"type":["array","null"],"description":"The schedule mutation records, or null on error.","items":{"type":"object","description":"A schedule mutation record. Legacy v0 payload; see the example for its fields."}},"expires":{"type":"string","description":"Timestamp after which the response is considered stale."}}},"error":{"type":["string","null"],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Error message, or null on success. Authentication and other failures"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"are returned as HTTP 200 with this field populated (for example"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Invalid auth-token"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"); this endpoint does not use 4xx status codes."},"children":[]}]}]}]}}},"id":"schema_86"},"schema_87":{"kind":"json-schema","data":{"type":"object","properties":{"Content-Type":{"type":"string","example":"application/json"}}},"id":"schema_87"},"schema_88":{"kind":"json-schema","data":{"required":["employeeId","deviceId","dateTime"],"type":"object","properties":{"employeeId":{"type":"integer","example":1},"deviceId":{"type":"string","example":"POS-FRONTDESK-01","minLength":1,"maxLength":35},"dateTime":{"$ref":"#/components/schemas/UTC_DateTime"},"officeId":{"type":["integer","null"],"example":1}}},"id":"schema_88"},"schema_89":{"kind":"json-schema","data":{"type":"object","description":"Response code 201 - CREATED"},"id":"schema_89"},"schema_90":{"kind":"json-schema","data":{"type":"object","properties":{"attendanceRegistration":{"type":"array","description":"Collection of attendance registrations","items":{"type":"object","properties":{"attendanceRegistrationId":{"type":"integer","description":"Unique attendance registration id","example":123},"employeeId":{"type":"integer","description":"Unique employee id","example":12345},"personnelNumber":{"type":"string","description":"Personnel number","example":"HV-FD-014"},"dateTime":{"$ref":"#/components/schemas/DateTime"},"event":{"$ref":"#/components/schemas/ClockEvent"},"serialNumber":{"type":["string","null"],"description":"Serial number of the clock device that was used, or null for web/manual clock-ins.","example":"POSFD01-9B7C2A"},"deviceName":{"type":["string","null"],"description":"Name of the clock device that was used, or null for web/manual clock-ins.","example":"POS-FRONTDESK-01"}}}}}},"id":"schema_90"},"schema_91":{"kind":"json-schema","data":{"type":"object","properties":{"_links":{"type":"object","properties":{"self":{"type":"object","properties":{"href":{"type":"string","description":"link to current page","example":"https://app.dyflexis.com/{systemName}/api/business/v3/registered-hours?page=2"}}},"next":{"type":"object","properties":{"href":{"type":["string","null"],"description":"link to next page","example":"https://app.dyflexis.com/{systemName}/api/business/v3/registered-hours?page=3"}}},"prev":{"type":"object","properties":{"href":{"type":["string","null"],"description":"link to previous page","example":"https://app.dyflexis.com/{systemName}/api/business/v3/registered-hours?page=1"}}},"first":{"type":"object","properties":{"href":{"type":"string","description":"link to first page","example":"https://app.dyflexis.com/{systemName}/api/business/v3/registered-hours?page=1"}}},"last":{"type":"object","properties":{"href":{"type":"string","description":"link to last page","example":"https://app.dyflexis.com/{systemName}/api/business/v3/registered-hours?page=100"}}}}},"registeredHours":{"type":"array","description":"Collection of all registered hours","items":{"type":"object","properties":{"id":{"type":"integer","description":"Internal hour id used by Dyflexis","example":1},"employeeId":{"type":"integer","description":"Internal employee id used by Dyflexis","example":1},"personnelNumber":{"type":["string","null"],"description":"External employee id used by the client","example":"HV-FD-014"},"firstName":{"type":"string","description":"First name","example":"Maria"},"infix":{"type":["string","null"],"description":"Infix (name particle), or null when the employee has none. May also be an empty string.","example":"de"},"lastName":{"type":"string","description":"Last Name","example":"Santos"},"employeeCostCenter":{"type":["string","null"],"description":"The cost center associated with the employee","example":"0052"},"contractTypeId":{"type":"integer","description":"Internal contract type id used by Dyflexis","example":123},"contractType":{"type":["string","null"],"description":"The name of the contract type the employee has","example":"Hospitality permanent"},"officeId":{"type":["integer","null"],"description":"The id of the office the hour has been registered for. For neutral hour types, which are not registered for specific offices, this will be the employee contract office.","example":1},"officeName":{"type":["string","null"],"description":"The name of the office the hour has been registered for. For neutral hour types, which are not registered for specific offices, this will be the employee contract office.","example":"Harborview Grand Hotel"},"departmentId":{"type":["integer","null"],"description":"The id of the department the hour has been registered for. For neutral hour types, which are not registered for specific departments, this will be null.","example":1},"departmentName":{"type":["string","null"],"description":"The name of the department the hour has been registered for. For neutral hour types, which are not registered for specific departments, this will be null.","example":"Front Desk"},"costCenterId":{"type":["integer","null"],"description":"The id of the cost center associated with the department the hour has been registered for. For neutral hour types, which are not registered for specific departments, this will be null.","example":1},"costCenterName":{"type":["string","null"],"description":"The name of the cost center associated with the department the hour has been registered for. For neutral hour types, which are not registered for specific departments, this will be null.","example":"Name"},"costCenterCode":{"type":["string","null"],"description":"The code of the cost center associated with the department the hour has been registered for. For neutral hour types, which are not registered for specific departments, this will be null.","example":"code"},"startDateTime":{"$ref":"#/components/schemas/DateTime"},"endDateTime":{"$ref":"#/components/schemas/DateTime"},"hourType":{"type":"string","description":"The hour type of the registered hour","example":"work"},"hours":{"type":"number","description":"The registered hours.","example":8.5},"status":{"$ref":"#/components/schemas/HourStatus"},"breakMinutes":{"type":"integer","description":"The break time of the hour in minutes, 0 if no break.","example":30},"duration":{"type":"integer","description":"The registered time in minutes.","example":480},"kilometers":{"type":"number","description":"Number of kilometers that have been registered at this time","example":10},"customExpenses":{"type":"array","description":"Collection of all the custom expenses that have been registered at this time","items":{"type":"object","properties":{"name":{"type":"string","description":"The System name of the expense","example":"office_day"},"value":{"type":["string","integer","boolean","array"],"items":{"type":["string","integer"]},"description":"The value of the expense","example":true}}}},"remark":{"type":["string","null"],"description":"Remark of the register hour block"}}}},"pageCount":{"type":"integer","description":"number of pages","example":100}}},"id":"schema_91"},"schema_92":{"kind":"json-schema","data":{"type":"object","properties":{"_links":{"type":"object","properties":{"self":{"type":"object","properties":{"href":{"type":"string","description":"link to current page","example":"https://app.dyflexis.com/{systemName}/api/payroll/v3/employees?page=2"}}},"next":{"type":"object","properties":{"href":{"type":["string","null"],"description":"link to next page","example":"https://app.dyflexis.com/{systemName}/api/payroll/v3/employees?page=3"}}},"prev":{"type":"object","properties":{"href":{"type":["string","null"],"description":"link to previous page","example":"https://app.dyflexis.com/{systemName}/api/payroll/v3/employees?page=1"}}},"first":{"type":"object","properties":{"href":{"type":"string","description":"link to first page","example":"https://app.dyflexis.com/{systemName}/api/payroll/v3/employees?page=1"}}},"last":{"type":"object","properties":{"href":{"type":"string","description":"link to last page","example":"https://app.dyflexis.com/{systemName}/api/payroll/v3/employees?page=100"}}}}},"pageCount":{"type":"integer","description":"number of pages","example":100},"employees":{"type":"array","items":{"type":"object","properties":{"employeeId":{"type":"integer","description":"Internal employee id used by Dyflexis","example":1},"initials":{"type":["string","null"],"description":"Initials","example":"J"},"firstName":{"type":["string","null"],"description":"First name","example":"Maria"},"lastNamePrefix":{"type":["string","null"],"description":"Prefix","example":"de"},"lastName":{"type":["string","null"],"description":"Last name","example":"Santos"},"nameFormat":{"oneOf":[{"$ref":"#/components/schemas/NameFormat"},{"type":"null"}],"description":"Null when no name format is set for the employee."},"maritalStatus":{"oneOf":[{"$ref":"#/components/schemas/MaritalStatus"},{"type":"null"}],"description":"Null when no marital status is set for the employee."},"partnerInitials":{"type":["string","null"],"description":"Partner initials","example":"A"},"partnerFirstName":{"type":["string","null"],"description":"First name of partner","example":"Anne"},"partnerLastNamePrefix":{"type":["string","null"],"description":"Prefix of partner","example":"van"},"partnerLastName":{"type":["string","null"],"description":"Last name of partner","example":"Ferguson"},"gender":{"oneOf":[{"$ref":"#/components/schemas/Gender"},{"type":"null"}],"description":"Null when no gender is set for the employee."},"phoneNumber":{"type":["string","null"],"description":"Primary phone number","example":"+31 6 12345678"},"phoneNumber2":{"type":["string","null"],"description":"Secondary phone number","example":"+31 20 5550100"},"email":{"type":["string","null"],"description":"Email address","example":"john.doe@example.com"},"dateOfBirth":{"type":["string","null"],"description":"Date of birth in ISO 8601","example":"2026-12-31"},"placeOfBirth":{"type":["string","null"],"description":"Location of birth","example":"Lisbon"},"streetName":{"type":["string","null"],"description":"Street name of current residence","example":"Damrak"},"streetNumber":{"type":["string","null"],"description":"House number of current residence","example":"70"},"postalCode":{"type":["string","null"],"description":"Postal code of current residence","example":"1012 LM"},"city":{"type":["string","null"],"description":"City of current residence","example":"Amsterdam"},"nationality":{"type":["string","null"],"description":"Nationality","example":"Portuguese"},"employmentStart":{"type":["string","null"],"description":"The first day of employment in ISO 8601","example":"2026-12-31"},"employmentEnd":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The last day of employment in ISO 8601, or the sentinel "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"0000-00-00"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" when employment is open-ended (no end date)."},"children":[]}]}]}],"example":"0000-00-00"},"personnelNumber":{"type":["string","null"],"description":"The personnel number as known by the connecting party","example":"HV-014"},"costCenter":{"type":["string","null"],"description":"Cost center for the employee","example":"Harborview Grand Hotel"},"probationDate":{"type":["string","null"],"description":"The probationary period end date in ISO 8601","example":"2026-12-31"},"employerReferenceId":{"type":["string","null"],"description":"Unique employer reference identifier as known by the connecting party","example":"HV-FD-014"},"jobDescription":{"type":["string","null"],"description":"A textual description of the employee's job","example":"Front desk receptionist"},"employments":{"type":["array","null"],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"All the id's of the organizational units (see "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"GET /api/department-management/v3/tree"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") where the employee is employed in. This value is null when there are no employments."},"children":[]}]}]}],"items":{"type":"integer","example":10}},"contracts":{"type":"array","items":{"type":"object","properties":{"contractReference":{"type":["string","null"],"description":"Unique reference to the contract per employee. This could be a serial number or a unique id provided by an external system.","example":"123abc"},"officeId":{"type":"integer","description":"Identifier of the Dyflexis office","example":1},"type":{"type":["integer","null"],"description":"Identifier of the Dyflexis contract type","example":1},"start":{"$ref":"#/components/schemas/Date","description":"Start date of contract in ISO 8601"},"end":{"$ref":"#/components/schemas/Date","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"End date of contract in ISO 8601, or the sentinel "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"9999-12-31"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" for an open-ended contract."},"children":[]}]}]}]},"hoursPerWeek":{"type":["number","null"],"description":"Contractual hours the employee works in a workweek","example":40},"daysPerWeek":{"type":["number","null"],"description":"Average days the employee works in a workweek","example":5},"hourlySalary":{"type":["number","null"],"description":"Remuneration for employment per hour","example":20},"raise":{"type":["number","null"],"description":"Raise given to the employee","example":5},"maxHoursPerWeek":{"type":["number","null"],"description":"Max hours the employee works in a workweek.","example":50}}}},"customFields":{"type":"array","description":"Custom fields with their label and value. Empty array when none are configured.","items":{"type":"object"},"example":[]}}}}}},"id":"schema_92"},"schema_93":{"kind":"json-schema","data":{"type":"object","properties":{"meta":{"type":"object","description":"Meta information about the request","properties":{"id":{"type":"integer","description":"The unique result id for this period. Note that this will change when a period gets unlocked and locked again.","example":1},"office":{"type":"object","description":"Information about the office for which the period was requested","properties":{"id":{"type":"integer","description":"The internal ID of the office","example":1},"name":{"type":"string","description":"The name of the office","example":"Pier 9 Bistro"}}},"contractTypeGroupName":{"type":"string","example":"Hospitality permanent","description":"The unique contract type group id used by Dyflexis. Note that this is not the same as a contract type id."},"period":{"type":"object","description":"Information about the period itself","properties":{"startDate":{"type":"string","description":"The start date of the payroll period","example":"2026-06-01"},"endDate":{"type":"string","description":"The end date of the payroll period","example":"2026-06-30"},"year":{"type":"integer","description":"The year of the payroll period"},"name":{"type":"string","example":"M06","description":"The period identifier as configured for your system"},"targetPeriod":{"type":"integer","example":7,"description":"The period (month/week/etc) the payroll data needs to be sent to"},"targetYear":{"type":"integer","example":2026,"description":"The year the payroll data needs to be sent to"}}}}},"payroll":{"description":"The payroll hours/allowances/expenses, listed for each employee.","type":"array","items":{"type":"object","properties":{"employee":{"type":"object","description":"The employee to whom the hours belong","properties":{"id":{"type":"integer","description":"The unique employee id used by Dyflexis","example":1},"employeeReference":{"type":["string","null"],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Unique reference to the employee when connected to an external employee that has been created using the "},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"../#tag/Employees/operation/Create%20or%20update%20an%20employee"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Create or update an employee"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" endpoint."},"children":[]}]}]}],"example":"P1413B"},"personnelNumber":{"type":"string","description":"The personnel number as known by the connecting party","example":"1413"},"firstName":{"type":["string","null"],"example":"Gail"},"lastName":{"type":["string","null"],"example":"Boehm"},"lastNamePrefix":{"type":["string","null"]},"employerReferenceId":{"type":["string","null"],"example":"123","description":"The reference number for the employer"},"costCenter":{"type":["string","null"],"example":"tech","description":"The cost center for the employee"},"employmentStart":{"type":["string","null"],"format":"date","example":"2026-01-01","description":"The employment start date (ISO 8601 date) for the employee"},"employmentEnd":{"type":["string","null"],"format":"date","example":"2026-12-31","description":"The employment end date (ISO 8601 date) for the employee"}}},"hours":{"description":"All the hours for the requested payroll application","type":"array","items":{"type":"object","description":"The number of hours in the requested period for this employee.","properties":{"date":{"$ref":"#/components/schemas/Date"},"components":{"additionalProperties":{"type":"number"},"example":{"work":8,"break":0.5,"Allowance.150":27,"Allowance.ORTSpecial":12}}}}}}}}}},"id":"schema_93"},"schema_94":{"kind":"json-schema","data":{"type":"object","properties":{"meta":{"type":"object","description":"Meta information about the request.","properties":{"id":{"type":"integer","description":"The unique result id for this period. Note that this will change when a period gets unlocked and locked again.","example":1},"office":{"type":"object","description":"Information about the office for which the period was requested.","properties":{"id":{"type":"integer","description":"The internal id of the office.","example":1},"name":{"type":"string","description":"The name of the office.","example":"Pier 9 Bistro"},"costCenter":{"type":["object","null"],"description":"Information about the cost center associated with the office.","properties":{"id":{"type":["integer","null"],"description":"The unique cost center id.","example":1},"name":{"type":["string","null"],"description":"The name of the cost center.","example":"Support"},"code":{"type":["string","null"],"description":"The code of the cost center.","example":"123"}}}}},"contractTypeGroupName":{"type":"string","example":"Hospitality permanent","description":"The unique contract type group id used by Dyflexis. Note that this is not the same as a contract type id."},"period":{"type":"object","description":"Information about the period itself.","properties":{"startDate":{"type":"string","description":"The start date (ISO 8601 date) of the payroll period.","example":"2026-06-01"},"endDate":{"type":"string","description":"The end date (ISO 8601 date) of the payroll period.","example":"2026-06-30"},"year":{"type":"integer","description":"The year of the payroll period."},"name":{"type":"string","example":"M06","description":"The period identifier as configured for your system."},"targetPeriod":{"type":"integer","example":7,"description":"The period (month/week/etc) the payroll data needs to be sent to."},"targetYear":{"type":"integer","example":2026,"description":"The year the payroll data needs to be sent to."}}}}},"payroll":{"description":"The payroll hours/allowances/expenses, listed for each employee and grouped by day and department.","type":"array","items":{"type":"object","properties":{"employee":{"type":"object","description":"The employee to whom the hours belong.","properties":{"id":{"type":"integer","description":"The unique employee id used by Dyflexis.","example":1},"employeeReference":{"type":["string","null"],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Unique reference to the employee when connected to an external employee that has been created using the "},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"../#tag/Employees/operation/Create%20or%20update%20an%20employee"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Create or update an employee"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" endpoint."},"children":[]}]}]}],"example":"P1413B"},"personnelNumber":{"type":"string","description":"The personnel number as known by the connecting party.","example":"1413"},"firstName":{"type":["string","null"],"example":"Gail"},"lastName":{"type":["string","null"],"example":"Boehm"},"lastNamePrefix":{"type":["string","null"]},"employerReferenceId":{"type":["string","null"],"example":"123","description":"The reference number for the employer."},"costCenter":{"type":["string","null"],"example":"tech","description":"The cost center for the employee."},"employmentStart":{"type":["string","null"],"example":"2026-01-01","description":"The employment start date (ISO 8601 date) for the employee."},"employmentEnd":{"type":["string","null"],"example":"2026-12-31","description":"The employment end date (ISO 8601 date) for the employee."}}},"hours":{"description":"All the hours for the requested payroll application, grouped by employee and department.","type":"array","items":{"type":"object","description":"The number of hours in the requested period for this employee and department.","properties":{"date":{"$ref":"#/components/schemas/Date"},"department":{"type":["object","null"],"description":"Information about the department for which the hours were registered. (Nullable).","properties":{"id":{"type":["integer","null"],"description":"The unique department id.","example":2},"name":{"type":["string","null"],"description":"The name of the department.","example":"Support"},"costCenter":{"type":["object","null"],"description":"Information about the cost center associated with the department.","properties":{"id":{"type":["integer","null"],"description":"The unique cost center id.","example":1},"name":{"type":["string","null"],"description":"The name of the cost center.","example":"Support"},"code":{"type":["string","null"],"description":"The code of the cost center.","example":"123"}}}}},"office":{"type":"object","description":"Information about the office where the hours were registered.","properties":{"id":{"type":"integer","description":"The unique office id.","example":1},"name":{"type":"string","description":"The name of the office.","example":"Den-Haag"},"costCenter":{"type":"object","description":"Information about the cost center associated with the office.","properties":{"id":{"type":["integer","null"],"description":"The unique cost center id.","example":1},"name":{"type":["string","null"],"description":"The name of the cost center.","example":"Main"},"code":{"type":["string","null"],"description":"The code of the cost center.","example":"12"}}}}},"components":{"type":"object","description":"The components of the hours and/or allowances for this employee and department.","additionalProperties":{"type":"number"},"example":{"work":8,"break":0.5,"Allowance.150":27,"Allowance.ORTSpecial":12}}}}}}}}}},"id":"schema_94"},"schema_95":{"kind":"json-schema","data":{"type":"object","properties":{"wageComponents":{"type":"array","items":{"type":"object","properties":{"displayName":{"type":"string","description":"The user friendly name of the component"},"wageComponent":{"type":"string","description":"The system name of the component"}}}}}},"id":"schema_95"},"schema_96":{"kind":"json-schema","data":{"type":"object","properties":{"payrollPeriodQueue":{"type":"array","items":{"type":"object","properties":{"queueId":{"type":"integer","description":"Unique id for this dataset","example":1},"created":{"type":"string","description":"Dataset creation date and time","example":"2026-08-13 11:55:07"},"officeId":{"type":"integer","description":"Unique identifier of the office.","example":1},"officeName":{"type":"string","description":"Slug of the office name.","example":"office-name"},"status":{"type":["string","null"],"description":"Last known status for this queue entry","example":"in progress"},"url":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fully-qualified URL to GET the payroll period hours for this item. Points at the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"/api2/payroll/hours/{office}/{contractTypeGroup}/{period}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" endpoint."},"children":[]}]}]}],"example":"https://app.dyflexis.com/{systemName}/api2/payroll/hours/harborview-grand-hotel/hospitality-permanent/2026-P01"},"statusUpdateUrl":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fully-qualified URL to POST a status update for this item. This is the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"url"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" value with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"/status"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" appended ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"/api2/payroll/hours/{office}/{contractTypeGroup}/{period}/status"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")."},"children":[]}]}]}],"example":"https://app.dyflexis.com/{systemName}/api2/payroll/hours/harborview-grand-hotel/hospitality-permanent/2026-P01/status"}}}}}},"id":"schema_96"},"schema_97":{"kind":"json-schema","data":{"required":["status","application"],"type":"object","properties":{"status":{"$ref":"#/components/schemas/PayrollStatus"},"application":{"type":"string","description":"An external application identifier. This allows multiple applications to process queue items and send individual status updates."},"message":{"maxLength":1000,"type":"string","description":"The reason for this status","example":"Invalid contract for user 125"},"url":{"maxLength":255,"type":"string","description":"URL for more information about this status","example":"https://www.example-payrollapplication.com/api-processing/error/1234-AA9D"}}},"id":"schema_97"},"schema_98":{"kind":"json-schema","data":{"type":"object","properties":{"payrollPeriodStatus":{"type":"object","properties":{"queueId":{"type":"integer"},"application":{"type":"string"},"status":{"type":"string"},"message":{"type":"string"},"url":{"type":"string"}}}}},"id":"schema_98"},"schema_99":{"kind":"json-schema","data":{"$ref":"#/components/schemas/Ulid"},"id":"schema_99"},"schema_100":{"kind":"json-schema","data":{"type":"array","items":{"type":"object","properties":{"status":{"type":"string","description":"The status at this point in time.","enum":["new","acknowledged","in_progress","success","failed"],"example":"acknowledged"},"message":{"type":["string","null"],"description":"An optional message associated with this status change.","example":null},"externalReference":{"type":["string","null"],"description":"An optional external reference identifier from the integration partner.","example":"EXT-2026-001234"},"createdAt":{"type":"string","format":"date-time","description":"The timestamp when this status was recorded.","example":"2026-03-30T14:30:00+00:00"}}}},"id":"schema_100"},"schema_101":{"kind":"json-schema","data":{"type":"object","properties":{"error":{"type":"string","example":"Invalid sick leave registration ID format"}}},"id":"schema_101"},"schema_102":{"kind":"json-schema","data":{"type":"string","enum":["asc","desc"]},"id":"schema_102"},"schema_103":{"kind":"json-schema","data":{"type":"object","properties":{"_links":{"type":"object","properties":{"self":{"type":"object","properties":{"href":{"type":"string","description":"Link to current page.","example":"https://app.dyflexis.com/{systemName}/api/absence/v3/sick-leave?page=2"}}},"next":{"type":"object","properties":{"href":{"type":["string","null"],"description":"Link to next page.","example":"https://app.dyflexis.com/{systemName}/api/absence/v3/sick-leave?page=3"}}},"prev":{"type":"object","properties":{"href":{"type":["string","null"],"description":"Link to previous page.","example":"https://app.dyflexis.com/{systemName}/api/absence/v3/sick-leave?page=1"}}},"first":{"type":"object","properties":{"href":{"type":"string","description":"Link to first page.","example":"https://app.dyflexis.com/{systemName}/api/absence/v3/sick-leave?page=1"}}},"last":{"type":"object","properties":{"href":{"type":"string","description":"Link to last page.","example":"https://app.dyflexis.com/{systemName}/api/absence/v3/sick-leave?page=100"}}}}},"pageCount":{"type":"integer","description":"Number of pages.","example":100},"sickLeaveRegistrations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The id of the sick leave registration.","example":"01GYS27FFVTP63WGPV34V1WR6P"},"employeeId":{"type":"integer","description":"The id of the employee","example":12},"personnelNumber":{"type":["string","null"],"description":"The personnel number of the employee or null if no personnel number exists.","example":"23V600"},"startDate":{"$ref":"#/components/schemas/Date","description":"Start date of sick leave in ISO 8601."},"expectedEndDate":{"$ref":"#/components/schemas/Date","description":"The expected end date of sick leave in ISO 8601."},"endDate":{"type":["string","null"],"description":"The actual registered end date of sick leave in ISO 8601, or null if no end date has been specified.","example":"2026-12-31"},"remark":{"type":"string","description":"The remark of the sick leave registration.","example":"sore throat"},"recovered":{"type":"boolean","description":"Will show if the sick leave registration is closed and the employee is recovered."},"sickDays":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The id of the sick leave registration day.","example":"01GYS27FFVTP63WGPV34V1WR6P"},"date":{"$ref":"#/components/schemas/Date","description":"The date of the sick day in ISO 8601."},"hourType":{"type":"string","description":"The specified hour type for that day.","example":"standard sick leave"}}}}}}}}},"id":"schema_103"},"schema_104":{"kind":"json-schema","data":{"type":"object","required":["status"],"properties":{"status":{"type":"string","description":"The status to report.","enum":["in_progress","success","failed"],"example":"success"},"message":{"type":["string","null"],"description":"An optional message providing details about the status (e.g. error details on failure). Maximum 1000 characters.","example":"Successfully imported into external system.","maxLength":1000},"externalReference":{"type":["string","null"],"description":"An optional external reference identifier from the integration partner's system. Maximum 255 characters.","example":"EXT-2026-001234","maxLength":255}}},"id":"schema_104"},"schema_105":{"kind":"json-schema","data":{"type":"object","properties":{"error":{"type":"string","example":"The \"status\" field must be one of [in_progress, success, failed], \"unknown\" given"}}},"id":"schema_105"},"schema_106":{"kind":"json-schema","data":{"type":"object","properties":{"error":{"type":"string","example":"Sick leave registration status not found for the given sick leave registration"}}},"id":"schema_106"},"schema_107":{"kind":"json-schema","data":{"type":"object","properties":{"error":{"type":"string","example":"Cannot transition from \"success\" to \"in_progress\""}}},"id":"schema_107"},"schema_108":{"kind":"json-schema","data":{"type":"object","properties":{"HumanResource":{"type":"object","required":["HumanResourceId","ResourceInformation"],"properties":{"HumanResourceId":{"type":"object","description":"Container for the unique identifier of the human resource.","required":["idOwner","IdValue"],"properties":{"idOwner":{"type":"string","description":"The organization that issues the identifier. This organization is also\nresponsible for the uniqueness of the identifier within its own context.\n","enum":["StaffingCompany","StaffingCustomer"],"xml":{"attribute":true}},"IdValue":{"type":"string","description":"The unique identifier of the human resource."}}},"ResourceInformation":{"type":"object","description":"Information about the human resource.","required":["PersonName","EntityContactInfo"],"properties":{"PersonName":{"type":"object","description":"The name of the human resource.","required":["FormattedName","GivenName","PreferredGivenName","FamilyName"],"properties":{"FormattedName":{"type":"string","description":"A fully formatted name as an XML string.","example":"Piet van der Berg"},"GivenName":{"type":"string","description":"The given or chosen name. The element may occur more than once,\none element for each given name.\n","example":"Arend"},"PreferredGivenName":{"type":"string","description":"The preferred given name.","example":"Piet"},"FamilyName":{"type":"object","description":"The family name. There can be multiple family names, but there\ncan be only one primary family name.\n","properties":{"primary":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Exactly one family name is required to have "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"primary"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" set to "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"TRUE"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Indicates whether this is the primary family name or any maiden/birth"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"name. Must be "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"TRUE"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" for the primary family name and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"FALSE"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" for any"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"additional maiden/birth name."},"children":[]}]}]}],"example":"TRUE","enum":["TRUE","FALSE"],"xml":{"attribute":true}},"prefix":{"type":"string","description":"Prefix of the family name.","example":"van der","xml":{"attribute":true}}}}}},"EntityContactInfo":{"type":"object","description":"Contact information of the human resource.","required":["ContactMethod"],"properties":{"ContactMethod":{"type":"object","description":"Container for information on contacting the human resource.","required":["InternetEmailAddress"],"properties":{"Mobile":{"type":"object","description":"Container for specifying the mobile number.","required":["FormattedNumber"],"properties":{"FormattedNumber":{"type":"string","description":"A fully formatted mobile number as an XML string."}}},"Telephone":{"type":"object","description":"Container for specifying the telephone number.","required":["FormattedNumber"],"properties":{"FormattedNumber":{"type":"string","description":"A fully formatted telephone number as an XML string."}}},"InternetEmailAddress":{"type":"string","description":"Email address of the human resource. Will be used as the username\nfor login.\n","example":"john.doe@example.com"}}}}},"PostalAddress":{"type":"object","description":"The home address of the human resource.","properties":{"PostalCode":{"type":"string","description":"The postal code."},"Municipality":{"type":"string","description":"The city."},"DeliveryAddress":{"type":"object","description":"Container for specifying the delivery address.","properties":{"StreetName":{"type":"string","description":"The street name."},"BuildingNumber":{"type":"string","description":"The number of the building."},"Unit":{"type":"string","description":"The number addition."}}}}}}},"HumanResourceAdditionalNL":{"type":"object","description":"Additional schema for SETU-specific elements.","properties":{"BirthDate":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The birth date of the human resource in "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YYYY-MM-DD"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (ISO 8601)."},"children":[]}]}]}]},"Sex":{"type":"string","description":"The gender of the human resource.","enum":["female","male","unknown"]},"CustomerReportingRequirements":{"type":"object","description":"Container for (reporting) related information concerning the offer.","properties":{"CostCenterName":{"type":"string","description":"The name of the cost center of the staffing customer for the\nstaffing position.\n"}}}}}}}}},"id":"schema_108"},"schema_109":{"kind":"json-schema","data":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string"},"code":{"type":["null","string"]},"context":{"type":"object","properties":{"field":{"type":["null","string"],"description":"The field related to the encountered error."}}}}}}}},"id":"schema_109"},"schema_110":{"kind":"json-schema","data":{"type":"object","properties":{"message":{"type":"string","description":"Invalid authentication token","example":"Unauthorized"}}},"id":"schema_110"},"schema_111":{"kind":"json-schema","data":{"type":"object","properties":{"message":{"type":"string","description":"Invalid authentication token scope","example":"Forbidden"}}},"id":"schema_111"},"schema_112":{"kind":"json-schema","data":{"type":"object","properties":{"Assignment":{"type":"object","required":["assignmentStatus","AssignmentId","ReferenceInformation","CustomerReportingRequirements","Rates","StaffingShift","AssignmentDateRange","UserArea"],"properties":{"assignmentStatus":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Specifies the intended action of the Assignment message."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Currently only "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"active"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is supported."},"children":[]}]}]}],"enum":["active","cancelled","revised","x:rejected"],"xml":{"attribute":true}},"AssignmentId":{"type":"object","description":"Container for the unique identifier of the assignment.","required":["idOwner","IdValue"],"properties":{"idOwner":{"type":"string","description":"The organization that issues the identifier. Also responsible for the\nuniqueness of the identifier within its own context.\n","enum":["StaffingCompany"]},"IdValue":{"type":"string","description":"The unique identifier of the assignment."}}},"ReferenceInformation":{"type":"object","description":"Container for references to the staffing customer and the human resource.\n","required":["StaffingCustomerId","HumanResourceId","PositionId"],"properties":{"StaffingCustomerId":{"type":"object","description":"Container for the identifier of the staffing customer.","required":["idOwner","IdValue"],"properties":{"idOwner":{"type":"string","description":"The organization that issues the identifier. Also responsible for\nuniqueness of the identifier within its own context.\n","enum":["BTW","Fi","KvK","OIN","StaffingCompany","StaffingCustomer"]},"IdValue":{"type":"string","description":"The unique identifier of the staffing customer."}}},"HumanResourceId":{"type":"object","description":"Container for the reference to the human resource. May appear multiple\ntimes.\n","required":["idOwner","IdValue"],"properties":{"idOwner":{"type":"string","description":"The organization that issues the identifier. Also responsible for\nuniqueness of the identifier within its own context.\n","enum":["StaffingCompany","StaffingCustomer"],"xml":{"attribute":true}},"IdValue":{"type":"string","description":"The unique identifier of the human resource."}}},"PositionId":{"type":"object","description":"Not used in SETU, but mandatory in HR-XML.","required":["IdValue"],"properties":{"IdValue":{"type":"string","description":"Not used in SETU, but mandatory in HR-XML. Must be included on\nthe message but left empty.\n"}}}}},"CustomerReportingRequirements":{"type":"object","description":"Container for (reporting) related information concerning the offer.","properties":{"CostCenterName":{"type":"string","description":"The name of the cost center of the staffing customer for the\nstaffing position.\n"}}},"Rates":{"type":"object","description":"Information about the rates for the assignment. May appear multiple times.\n","required":["rateType","rateStatus","Amount","Class","StartDate"],"properties":{"rateType":{"type":"string","description":"Whether the rate should be billed to the staffing customer or paid to\nthe human resource.\n","enum":["bill","pay"],"xml":{"attribute":true}},"rateStatus":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"rates"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" container is used in multiple standards. In the Assignment"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"message "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"rateStatus"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" must always be "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"agreed"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Agreement on the rate is"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"done in a framework agreement or during ordering and selection."},"children":[]}]}]}],"enum":["agreed"],"xml":{"attribute":true}},"Amount":{"type":"object","description":"The amount of the rate.","required":["rateAmountPeriod","currency"],"properties":{"rateAmountPeriod":{"type":"string","description":"The timeframe the rate applies to. Also used to indicate whether a\nmark-up is consolidated within the rate or specified as a separate\n(split) rate.\n","enum":["hourly"],"xml":{"attribute":true}},"currency":{"type":"string","description":"The currency in which the rate amount is specified.","enum":["EUR"],"xml":{"attribute":true}}}},"Class":{"type":"string","description":"Whether the rate applies to an allowance, an expense, or a time interval.\n","enum":["Allowance","Expense","TimeInterval"]},"Multiplier":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Mandatory for rates with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Class"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" set to "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"TimeInterval"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", optional for"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"other rate types."},"children":[]}]}]}]},"StartDate":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The date from which the rate applies. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YYYY-MM-DD"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (ISO 8601)."},"children":[]}]}]}]}}},"StaffingShift":{"type":"object","description":"Container specifying the number of hours a human resource is hired for.\nMay appear multiple times.\n","required":["Id"],"properties":{"shiftPeriod":{"type":"string","description":"Unused in Dyflexis but may be included in the request.","xml":{"attribute":true}},"Id":{"type":"object","description":"Not used in SETU, but mandatory in HR-XML.","required":["IdValue"],"properties":{"IdValue":{"description":"Not used in SETU, but mandatory in HR-XML, must be empty."}}},"Hours":{"type":"number","description":"Unused in Dyflexis but may be included in the request."}}},"AssignmentDateRange":{"type":"object","description":"The start and expected end date of the assignment.","required":["StartDate"],"properties":{"StartDate":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The start date of the assignment. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YYYY-MM-DD"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (ISO 8601)."},"children":[]}]}]}]},"ExpectedEndDate":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The expected end date of the assignment. Provided if known."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Expiration of this date does not mean that the assignment has ended."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YYYY-MM-DD"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (ISO 8601)."},"children":[]}]}]}]},"ActualEndDate":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The actual end date of the assignment. Related time cards containing"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"working hours dated after this "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"ActualEndDate"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" cannot be processed."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YYYY-MM-DD"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (ISO 8601)."},"children":[]}]}]}]}}},"UserArea":{"type":"object","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Container for references to the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"UserArea"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"required":["AssignmentAdditionalNL"],"properties":{"AssignmentAdditionalNL":{"type":"object","required":["SETUVersionId"],"properties":{"SETUVersionId":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Version of the SETU standard used for "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Assignment"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"enum":["1.4"]},"JobTitle":{"type":"string","description":"The title of the position the human resource will fulfil.\n"},"InclusiveRate":{"type":"boolean","description":"Unused in Dyflexis but may be included in the request."}}}}}}}}},"id":"schema_112"},"schema_113":{"kind":"json-schema","data":{"type":"object","properties":{"TimeCard":{"type":"object","properties":{"Id":{"type":"object","description":"Container for the unique identifier of the time card.","properties":{"idOwner":{"type":"string","enum":["StaffingCustomer"],"xml":{"attribute":true}},"IdValue":{"type":"string","description":"The unique identifier of the time card."}}},"ReportedResource":{"type":"object","description":"Information on the human resource conducting the activities,\nincluding a limited amount of details and an optional reference to a\nrecord with a more detailed description.\n","properties":{"Person":{"type":"object","description":"The human resource for whom time, allowances and/or expenses\nare reported.\n","properties":{"Id":{"type":"object","description":"Reference to a human resource.","properties":{"idOwner":{"type":"string","description":"The organization that issues the identifier. Also responsible\nfor uniqueness within its own context.\n","enum":["StaffingCompany","StaffingCustomer"],"xml":{"attribute":true}},"IdValue":{"type":"string","description":"The unique identifier of the human resource."}}},"PersonName":{"type":"object","description":"The name of the human resource.","properties":{"FormattedName":{"type":"string","description":"A fully formatted name as an XML string."},"PreferredGivenName":{"type":"string","description":"The preferred given name."},"FamilyName":{"type":"object","description":"The family name.","properties":{"primary":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Exactly one family name is required to have "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"primary"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" set"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"to "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"TRUE"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Indicates whether this is the primary family"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"name or any maiden/birth name."},"children":[]}]}]}],"example":"TRUE","enum":["TRUE","FALSE"],"xml":{"attribute":true}},"prefix":{"type":"string","description":"Prefix of the family name.","example":"van der","xml":{"attribute":true}}}}}}}}}},"ReportedTime":{"type":"object","description":"Container for information about the reported working hours, allowances\nand expenses of the human resource for a certain period of time.\n","properties":{"status":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The status of the time card in the process. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"approved"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is conveyed"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"as an empty value; "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"declined"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is conveyed as "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"rejected"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"enum":["","rejected"],"xml":{"attribute":true}},"PeriodStartDate":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The start date and/or time of the timeframe reported on the time"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"card. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YYYY-MM-DDThh:mm:ssZ"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (ISO 8601); if no timezone is provided"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Dyflexis system time is used."},"children":[]}]}]}]},"PeriodEndDate":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The end date and/or time of the timeframe reported on the time"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"card. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YYYY-MM-DDThh:mm:ssZ"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (ISO 8601); if no timezone is provided"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Dyflexis system time is used."},"children":[]}]}]}]},"TimeInterval":{"type":"object","description":"Container for information about the reported working hours of the\nhuman resource. May appear multiple times.\n","properties":{"type":{"type":"string","description":"The type of time frame registered, using the SETU hour-types\ncode list.\n","xml":{"attribute":true}},"Id":{"type":"object","description":"Container for a unique identifier of the reported time interval.\n","properties":{"idOwner":{"type":"string","description":"The organization that issues the identifier. Also responsible\nfor uniqueness within its own context.\n","enum":["StaffingCompany","StaffingCustomer"],"xml":{"attribute":true}},"IdValue":{"type":"string","description":"The unique identifier of the time interval."}}},"StartTimeDate":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The start date and time of the reported time interval."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YYYY-MM-DDThh:mm:ssZ"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (ISO 8601)."},"children":[]}]}]}]},"EndTimeDate":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The end date and time of the reported time interval."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YYYY-MM-DDThh:mm:ssZ"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (ISO 8601)."},"children":[]}]}]}]},"RateOrAmount":{"type":"object","description":"Specification of the (agreed) rate that applies to the reported\ntime interval. May appear multiple times.\n","properties":{"currency":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The currency in which the rate or amount is specified. Only"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Euro ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"EUR"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") is supported."},"children":[]}]}]}],"enum":["EUR"],"xml":{"attribute":true}},"type":{"type":"string","description":"Type of rate that applies to the activities conducted.\n","enum":["4weekly","hourly","hourlyconsolidated","hourlysplit","monthly","weekly"],"xml":{"attribute":true}},"multiplier":{"type":"number","format":"float","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The multiplier to apply to the rate to determine the real"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"amount paid or billed. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"100"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (the \"standard multiplier\")"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"represents 100% (no mark-up). A 50% mark-up, 1.5× the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"standard rate, is represented as "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"150"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"xml":{"attribute":true}}}}}},"Allowance":{"type":"object","description":"Specification of expenses (costs incurred representing eligibility)\nand/or allowances (additional bonuses given for the duration of\nthe represented time interval) for a specific time period. May\nappear multiple times.\n","properties":{"type":{"type":"string","description":"The type of expense or allowance reported, using the SETU\nexpense-allowance-types code list.\n","xml":{"attribute":true}},"Id":{"type":"object","description":"Identifier of the reported allowance or expense.","properties":{"idOwner":{"type":"string","description":"The organization that issues the identifier. Also responsible\nfor uniqueness within its own context.\n","enum":["StaffingCompany","StaffingCustomer"],"xml":{"attribute":true}},"IdValue":{"type":"object","description":"The unique identifier of the allowance.","properties":{"name":{"type":"string","description":"Specifies whether the item is an expense or an allowance.\n","enum":["allowance","expense"],"xml":{"attribute":true}}}}}},"Amount":{"type":"object","description":"The amount per unit of the allowance or expense.\n","properties":{"currency":{"type":"string","description":"The currency of the specified amount.","enum":["EUR"],"xml":{"attribute":true}}}},"Quantity":{"type":"integer","description":"Numerical quantity of the expense or allowance, assigned or\ndetermined by calculation or measurement. Cannot be negative.\n"}}}}},"SubmitterInfo":{"type":"object","description":"Who (person or system) submitted the time card to the staffing supplier\nand when.\n","properties":{"Source":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The person or system that submitted the time card. Always"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Dyflexis"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]},"SubmittedDateTime":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Timestamp of when the time card was submitted."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YYYY-MM-DDThh:mm:ssZ"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (ISO 8601)."},"children":[]}]}]}]}}},"ApprovalInfo":{"type":"object","description":"Who approved (or rejected) the time card and when.\n","properties":{"ApprovedDateTime":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Timestamp of when the time card was approved, or rejected (for"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"a rejected time card). "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YYYY-MM-DDThh:mm:ssZ"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (ISO 8601)."},"children":[]}]}]}]}}},"AdditionalData":{"type":"object","description":"Container for specifying additional elements.","properties":{"StaffingAdditionalData":{"type":"object","description":"Container for additional reporting and reference elements.\n","properties":{"CustomerReportingRequirements":{"type":"object","description":"Container for a variety of customer-related reporting elements.\n","properties":{"AdditionalRequirement":{"type":"object","description":"Any other customer-specific reporting requirement needed.\n","properties":{"requirementTitle":{"type":"string","description":"The name of the additional reporting requirement, using\nthe SETU time-card customer-specific-requirements code\nlist.\n","xml":{"attribute":true}}}}}},"ReferenceInformation":{"type":"object","description":"References to other documents or parties.","properties":{"StaffingCustomerId":{"type":"object","description":"Container for the unique identifier of the staffing customer.\n","properties":{"idOwner":{"type":"string","description":"The organization that issues the identifier. Also\nresponsible for uniqueness within its own context.\n","enum":["BTW","Fi","KvK","OIN","StaffingCompany","StaffingCustomer"],"xml":{"attribute":true}},"IdValue":{"type":"string","description":"The unique identifier of the staffing customer."}}},"AssignmentId":{"type":"object","description":"Container for the unique identifier of the assignment.\n","properties":{"idOwner":{"type":"string","enum":["StaffingCompany"],"xml":{"attribute":true}},"IdValue":{"type":"string","description":"The unique identifier of the assignment."}}}}}}}}}}}}},"id":"schema_113"}},"exampleStore":{"paths/~1api~1department-management~1v3~1tree/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api~1department-management~1v3~1tree/get/responses/401/content/application~1json/example"},"paths/~1api~1department-management~1v3~1tree/get/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api~1department-management~1v3~1tree/get/responses/403/content/application~1json/example"},"paths/~1api2~1offices/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api2~1offices/get/responses/401/content/application~1json/example"},"paths/~1api2~1offices/get/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api2~1offices/get/responses/403/content/application~1json/example"},"paths/~1api~1business~1v3~1employees/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api~1business~1v3~1employees/get/responses/401/content/application~1json/example"},"paths/~1api~1business~1v3~1employees/get/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api~1business~1v3~1employees/get/responses/403/content/application~1json/example"},"paths/~1api2~1employee-mappings/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api2~1employee-mappings/get/responses/401/content/application~1json/example"},"paths/~1api2~1employee-mappings/get/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api2~1employee-mappings/get/responses/403/content/application~1json/example"},"paths/~1api2~1external-employees~1{employeeReference}/post/responses/200/content/application~1json/example":{"value":[],"id":"paths/~1api2~1external-employees~1{employeeReference}/post/responses/200/content/application~1json/example"},"paths/~1api2~1external-employees~1{employeeReference}/post/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api2~1external-employees~1{employeeReference}/post/responses/401/content/application~1json/example"},"paths/~1api2~1external-employees~1{employeeReference}/post/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api2~1external-employees~1{employeeReference}/post/responses/403/content/application~1json/example"},"paths/~1api2~1contract-types/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api2~1contract-types/get/responses/401/content/application~1json/example"},"paths/~1api2~1contract-types/get/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api2~1contract-types/get/responses/403/content/application~1json/example"},"paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/200/content/application~1json/example":{"value":[],"id":"paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/200/content/application~1json/example"},"paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/400/content/application~1json/examples/warning":{"value":{"status":"warning","warnings":[{"contractReference":"E01","type":"invalid_data","data":[{"startDate":"20-111-0","endDate":102}]},{"contractReference":"E02","type":"overlap","data":["E03","E04"]}]},"key":"warning","summary":"warning","id":"paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/400/content/application~1json/examples/warning"},"paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/400/content/application~1json/examples/error":{"value":{"status":"error","data":"Missing employee reference."},"key":"error","summary":"error","id":"paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/400/content/application~1json/examples/error"},"paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/401/content/application~1json/example"},"paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api2~1external-employees~1{employeeReference}~1contracts/post/responses/403/content/application~1json/example"},"paths/~1information-streams~1v3~1list/get/responses/200/content/application~1json/examples/ungrouped":{"value":[{"key":"bar-revenue-pier9","isActive":true,"source":"user_provided","type":"revenue","granularity":"day","category":"realized","departments":[1,2],"unit":"currency","name":"Pier 9 bar revenue","note":"Daily bar revenue at the Pier 9 Bistro","sourceSystem":"Hospitality POS solutions","sourceSystemSupportEmail":"support@hospitality-pos.example.com","createdAt":"2026-07-03 13:23:31","updatedAt":"2026-07-03 13:23:31","customFeatures":["feature1","feature2"],"formulaParents":[]}],"key":"ungrouped","summary":"Without groupBy (array of streams)","id":"paths/~1information-streams~1v3~1list/get/responses/200/content/application~1json/examples/ungrouped"},"paths/~1information-streams~1v3~1list/get/responses/200/content/application~1json/examples/grouped":{"value":{"groups":[{"groupId":"18-realized","label":"Amsterdam","category":"realized","departments":["01KMQK8WKA3Z5HTY35TNB6B55D"],"departmentNames":{"01KMQK8WKA3Z5HTY35TNB6B55D":"Department D"},"streams":["bar-revenue-pier9"]}],"streams":[{"key":"bar-revenue-pier9","isActive":true,"source":"user_provided","type":"revenue","granularity":"day","category":"realized","departments":[1,2],"unit":"currency","name":"Pier 9 bar revenue","note":"Daily bar revenue at the Pier 9 Bistro","sourceSystem":"Hospitality POS solutions","sourceSystemSupportEmail":"support@hospitality-pos.example.com","createdAt":"2026-07-03 13:23:31","updatedAt":"2026-07-03 13:23:31","customFeatures":["feature1","feature2"],"formulaParents":[]}]},"key":"grouped","summary":"With groupBy (groups and streams)","id":"paths/~1information-streams~1v3~1list/get/responses/200/content/application~1json/examples/grouped"},"paths/~1information-streams~1v3~1list/get/responses/400/content/application~1json/example":{"value":{"title":"Bad Request","status":400,"detail":"Validation Failed","message":"Validation Failed","code":400,"violations":[{"propertyPath":"name","title":"This value should not be null.","type":null}]},"id":"paths/~1information-streams~1v3~1list/get/responses/400/content/application~1json/example"},"paths/~1information-streams~1v3~1list/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","status":401,"detail":"Invalid Token","message":"Invalid Token","code":401},"id":"paths/~1information-streams~1v3~1list/get/responses/401/content/application~1json/example"},"paths/~1information-streams~1v3~1list/get/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","status":403,"detail":"Access denied.","message":"Access denied.","code":403},"id":"paths/~1information-streams~1v3~1list/get/responses/403/content/application~1json/example"},"paths/~1information-streams~1v3~1data-points/get/responses/200/content/application~1json/example":{"value":{"day":{"2026-05-01":{"value":25.8,"lower_bound":0,"upper_bound":0},"2026-07-21":{"value":700,"lower_bound":0,"upper_bound":0}},"hour":{"2026-07-20 00:00:00":{"value":100,"lower_bound":0,"upper_bound":0},"2026-07-20 03:00:00":{"value":50,"lower_bound":0,"upper_bound":0}},"week":{"2026-W29":{"value":300,"lower_bound":200,"upper_bound":400}}},"id":"paths/~1information-streams~1v3~1data-points/get/responses/200/content/application~1json/example"},"paths/~1information-streams~1v3~1data-points/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","status":401,"detail":"Invalid Token","message":"Invalid Token","code":401},"id":"paths/~1information-streams~1v3~1data-points/get/responses/401/content/application~1json/example"},"paths/~1information-streams~1v3~1data-points/get/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","status":403,"detail":"Access denied.","message":"Access denied.","code":403},"id":"paths/~1information-streams~1v3~1data-points/get/responses/403/content/application~1json/example"},"paths/~1information-streams~1v3~1streams/post/responses/400/content/application~1json/example":{"value":{"title":"Bad Request","status":400,"detail":"Validation Failed","message":"Validation Failed","code":400,"violations":[{"propertyPath":"name","title":"This value should not be null.","type":null}]},"id":"paths/~1information-streams~1v3~1streams/post/responses/400/content/application~1json/example"},"paths/~1information-streams~1v3~1streams/post/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","status":401,"detail":"Invalid Token","message":"Invalid Token","code":401},"id":"paths/~1information-streams~1v3~1streams/post/responses/401/content/application~1json/example"},"paths/~1information-streams~1v3~1streams/post/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","status":403,"detail":"Access denied.","message":"Access denied.","code":403},"id":"paths/~1information-streams~1v3~1streams/post/responses/403/content/application~1json/example"},"paths/~1information-streams~1v3~1streams/post/responses/404/content/application~1json/example":{"value":{"title":"Not Found","status":404,"detail":"Not Found","message":"Not Found","code":404},"id":"paths/~1information-streams~1v3~1streams/post/responses/404/content/application~1json/example"},"paths/~1information-streams~1v3~1streams/post/responses/500/content/application~1json/example":{"value":{"title":"Internal Server Error","status":500,"detail":"Internal Server Error","message":"Internal Server Error","code":500},"id":"paths/~1information-streams~1v3~1streams/post/responses/500/content/application~1json/example"},"paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/400/content/application~1json/example":{"value":{"title":"Bad Request","status":400,"detail":"Validation Failed","message":"Validation Failed","code":400,"violations":[{"propertyPath":"name","title":"This value should not be null.","type":null}]},"id":"paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/400/content/application~1json/example"},"paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","status":401,"detail":"Invalid Token","message":"Invalid Token","code":401},"id":"paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/401/content/application~1json/example"},"paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","status":403,"detail":"Access denied.","message":"Access denied.","code":403},"id":"paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/403/content/application~1json/example"},"paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/404/content/application~1json/example":{"value":{"title":"Not Found","status":404,"detail":"Not Found","message":"Not Found","code":404},"id":"paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/404/content/application~1json/example"},"paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/500/content/application~1json/example":{"value":{"title":"Internal Server Error","status":500,"detail":"Internal Server Error","message":"Internal Server Error","code":500},"id":"paths/~1information-streams~1v3~1datapoint~1{key}/post/responses/500/content/application~1json/example"},"paths/~1api~1business~1v3~1scheduled/get/responses/400/content/application~1json/example":{"value":{"title":"Bad Request","status":400,"detail":"Invalid number: 12c","message":"Invalid number: 12c","code":400},"id":"paths/~1api~1business~1v3~1scheduled/get/responses/400/content/application~1json/example"},"paths/~1api~1business~1v3~1scheduled/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api~1business~1v3~1scheduled/get/responses/401/content/application~1json/example"},"paths/~1api~1business~1v3~1scheduled/get/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api~1business~1v3~1scheduled/get/responses/403/content/application~1json/example"},"paths/~1api~1v0~1mutation/get/responses/200/content/application~1json/example":{"value":{"api":{},"error":null,"response":{"data":[{"id":0,"user_id":0,"date":"string","change_date":"string","change_by":"string","changes":[null]}],"expires":"2026-10-03T16:36:10.488Z"}},"id":"paths/~1api~1v0~1mutation/get/responses/200/content/application~1json/example"},"paths/~1api~1clock~1v3~1clock-in/post/responses/400/content/application~1json/example":{"value":{"title":"Bad Request","status":400,"detail":"Validation Failed","message":"Validation Failed","code":400,"violations":[{"propertyPath":"employeeId","title":"This value should not be null.","type":null}]},"id":"paths/~1api~1clock~1v3~1clock-in/post/responses/400/content/application~1json/example"},"paths/~1api~1clock~1v3~1clock-in/post/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api~1clock~1v3~1clock-in/post/responses/401/content/application~1json/example"},"paths/~1api~1clock~1v3~1clock-in/post/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api~1clock~1v3~1clock-in/post/responses/403/content/application~1json/example"},"paths/~1api~1clock~1v3~1clock-in/post/responses/500/content/application~1json/example":{"value":{"title":"Internal Server Error","message":"Server error","status":500},"id":"paths/~1api~1clock~1v3~1clock-in/post/responses/500/content/application~1json/example"},"paths/~1api~1clock~1v3~1clock-out/post/responses/400/content/application~1json/example":{"value":{"title":"Bad Request","status":400,"detail":"Validation Failed","message":"Validation Failed","code":400,"violations":[{"propertyPath":"employeeId","title":"This value should not be null.","type":null}]},"id":"paths/~1api~1clock~1v3~1clock-out/post/responses/400/content/application~1json/example"},"paths/~1api~1clock~1v3~1clock-out/post/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api~1clock~1v3~1clock-out/post/responses/401/content/application~1json/example"},"paths/~1api~1clock~1v3~1clock-out/post/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api~1clock~1v3~1clock-out/post/responses/403/content/application~1json/example"},"paths/~1api~1clock~1v3~1clock-out/post/responses/500/content/application~1json/example":{"value":{"title":"Internal Server Error","message":"Server error","status":500},"id":"paths/~1api~1clock~1v3~1clock-out/post/responses/500/content/application~1json/example"},"paths/~1api2~1attendance-registration~1{date}/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api2~1attendance-registration~1{date}/get/responses/401/content/application~1json/example"},"paths/~1api2~1attendance-registration~1{date}/get/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api2~1attendance-registration~1{date}/get/responses/403/content/application~1json/example"},"paths/~1api2~1attendance-registration~1{date}/get/responses/404/content/application~1json/example":{"value":{"title":"Not Found","message":"Resource not found","status":404},"id":"paths/~1api2~1attendance-registration~1{date}/get/responses/404/content/application~1json/example"},"paths/~1api~1business~1v3~1registered-hours/get/responses/400/content/application~1json/example":{"value":{"title":"Bad Request","status":400,"detail":"Invalid number: 12c","message":"Invalid number: 12c","code":400},"id":"paths/~1api~1business~1v3~1registered-hours/get/responses/400/content/application~1json/example"},"paths/~1api~1business~1v3~1registered-hours/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api~1business~1v3~1registered-hours/get/responses/401/content/application~1json/example"},"paths/~1api~1business~1v3~1registered-hours/get/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api~1business~1v3~1registered-hours/get/responses/403/content/application~1json/example"},"paths/~1api~1payroll~1v3~1employees/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api~1payroll~1v3~1employees/get/responses/401/content/application~1json/example"},"paths/~1api~1payroll~1v3~1employees/get/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api~1payroll~1v3~1employees/get/responses/403/content/application~1json/example"},"paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/401/content/application~1json/example"},"paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/403/content/application~1json/example"},"paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/404/content/application~1json/example":{"value":{"title":"Not Found","message":"Resource not found","status":404},"id":"paths/~1api~1payroll~1v3~1hours-per-day~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/404/content/application~1json/example"},"paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/401/content/application~1json/example"},"paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/403/content/application~1json/example"},"paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/404/content/application~1json/example":{"value":{"title":"Not Found","message":"Resource not found","status":404},"id":"paths/~1api~1payroll~1v3~1hours-per-department~1{officeUrl}~1{contractTypeGroupName}~1{period}/get/responses/404/content/application~1json/example"},"paths/~1api2~1payroll~1wage-components/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api2~1payroll~1wage-components/get/responses/401/content/application~1json/example"},"paths/~1api2~1payroll~1wage-components/get/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api2~1payroll~1wage-components/get/responses/403/content/application~1json/example"},"paths/~1api2~1payroll~1queue~1from~1{lastQueueId}/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api2~1payroll~1queue~1from~1{lastQueueId}/get/responses/401/content/application~1json/example"},"paths/~1api2~1payroll~1queue~1from~1{lastQueueId}/get/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api2~1payroll~1queue~1from~1{lastQueueId}/get/responses/403/content/application~1json/example"},"paths/~1api2~1payroll~1queue~1{queueId}~1status/post/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api2~1payroll~1queue~1{queueId}~1status/post/responses/401/content/application~1json/example"},"paths/~1api2~1payroll~1queue~1{queueId}~1status/post/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api2~1payroll~1queue~1{queueId}~1status/post/responses/403/content/application~1json/example"},"paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status-history/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status-history/get/responses/401/content/application~1json/example"},"paths/~1api~1absence~1v3~1sick-leave/get/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api~1absence~1v3~1sick-leave/get/responses/401/content/application~1json/example"},"paths/~1api~1absence~1v3~1sick-leave/get/responses/403/content/application~1json/example":{"value":{"title":"Forbidden","message":"Access denied.","status":403},"id":"paths/~1api~1absence~1v3~1sick-leave/get/responses/403/content/application~1json/example"},"paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status/post/responses/401/content/application~1json/example":{"value":{"title":"Unauthorized","message":"Invalid Token","status":401},"id":"paths/~1api~1absence~1v3~1sick-leave~1{sickLeaveRegistrationId}~1status/post/responses/401/content/application~1json/example"},"paths/~1api~1setu~11.4.1~1humanResource/post/requestBody/content/application~1xml/example":{"value":"<HumanResource>\n  <HumanResourceId idOwner=\"StaffingCompany\">\n    <IdValue>179943169</IdValue>\n  </HumanResourceId>\n  <ResourceInformation>\n    <PersonName>\n      <FormattedName>John de Smith</FormattedName>\n      <GivenName>John</GivenName>\n      <PreferredGivenName>John</PreferredGivenName>\n      <FamilyName primary=\"true\" prefix=\"de\">Smith</FamilyName>\n    </PersonName>\n    <EntityContactInfo>\n      <ContactMethod>\n        <Mobile>\n          <FormattedNumber>06-12345678</FormattedNumber>\n        </Mobile>\n        <Telephone>\n          <FormattedNumber>070 1234567</FormattedNumber>\n        </Telephone>\n        <InternetEmailAddress>john.doe@example.com</InternetEmailAddress>\n      </ContactMethod>\n    </EntityContactInfo>\n    <PostalAddress>\n      <PostalCode>2516 BE</PostalCode>\n      <Municipality>The Hague</Municipality>\n      <DeliveryAddress>\n        <StreetName>Binckhorstlaan</StreetName>\n        <BuildingNumber>36</BuildingNumber>\n        <Unit>M449</Unit>\n      </DeliveryAddress>\n    </PostalAddress>\n  </ResourceInformation>\n  <HumanResourceAdditionalNL>\n    <BirthDate>1991-03-18</BirthDate>\n    <Sex>male</Sex>\n    <CustomerReportingRequirements>\n      <CostCenterName>The Hague Office</CostCenterName>\n    </CustomerReportingRequirements>\n  </HumanResourceAdditionalNL>\n</HumanResource>\n","id":"paths/~1api~1setu~11.4.1~1humanResource/post/requestBody/content/application~1xml/example"},"paths/~1api~1setu~11.4.1~1assignment/post/requestBody/content/application~1xml/example":{"value":"<Assignment xmlns=\"http://ns.hr-xml.org/2007-04-15\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:nl=\"http://ns.setu.nl/2020-01\" xsi:schemaLocation=\"http://ns.hr-xml.org/2007-04-15 ../../../hr-xml/SIDES/Assignment.xsd http://ns.setu.nl/2020-01 ../../schemas/2020-01/AssignmentAdditionalNL.xsd\" assignmentStatus=\"active\" xml:lang=\"en-gb\">\n  <AssignmentId idOwner=\"StaffingCompany\">\n    <IdValue>1234/1234561</IdValue>\n  </AssignmentId>\n  <ReferenceInformation>\n    <StaffingCustomerId idOwner=\"StaffingCompany\">\n      <IdValue>223445</IdValue>\n    </StaffingCustomerId>\n    <HumanResourceId idOwner=\"StaffingCompany\">\n      <IdValue>179943169</IdValue>\n    </HumanResourceId>\n    <HumanResourceId idOwner=\"StaffingCustomer\">\n      <IdValue>23456</IdValue>\n    </HumanResourceId>\n    <PositionId>\n      <IdValue/>\n    </PositionId>\n  </ReferenceInformation>\n  <CustomerReportingRequirements>\n    <CostCenterName>The Hague Office</CostCenterName>\n  </CustomerReportingRequirements>\n  <Rates rateStatus=\"agreed\" rateType=\"pay\">\n    <Amount currency=\"EUR\" rateAmountPeriod=\"hourly\">16.00</Amount>\n    <Class>TimeInterval</Class>\n    <Multiplier>100</Multiplier>\n    <StartDate>2026-02-01</StartDate>\n  </Rates>\n  <StaffingShift shiftPeriod=\"weekly\">\n    <Id>\n      <IdValue/>\n    </Id>\n    <Hours>32</Hours>\n  </StaffingShift>\n  <AssignmentDateRange>\n    <StartDate>2026-02-01</StartDate>\n    <ExpectedEndDate>2026-08-01</ExpectedEndDate>\n    <ActualEndDate>2026-08-01</ActualEndDate>\n  </AssignmentDateRange>\n  <UserArea>\n    <nl:AssignmentAdditionalNL>\n      <nl:SETUVersionId>1.4</nl:SETUVersionId>\n      <nl:JobTitle>Lasser</nl:JobTitle>\n      <nl:InclusiveRate>true</nl:InclusiveRate>\n    </nl:AssignmentAdditionalNL>\n  </UserArea>\n</Assignment>\n","id":"paths/~1api~1setu~11.4.1~1assignment/post/requestBody/content/application~1xml/example"},"paths/timeCard/post/requestBody/content/application~1xml/example":{"value":"<TimeCard>\n  <Id idOwner=\"StaffingCustomer\">\n    <IdValue>1234567890</IdValue>\n  </Id>\n  <ReportedResource>\n    <Person>\n      <Id idOwner=\"StaffingCustomer\">\n        <IdValue>23456</IdValue>\n      </Id>\n      <PersonName>\n        <FormattedName>John de Smith</FormattedName>\n        <PreferredGivenName>Piet</PreferredGivenName>\n        <FamilyName primary=\"true\" prefix=\"de\">Smith</FamilyName>\n      </PersonName>\n    </Person>\n  </ReportedResource>\n  <ReportedTime status=\"\">\n    <PeriodStartDate>2026-12-31</PeriodStartDate>\n    <PeriodEndDate>2026-12-31</PeriodEndDate>\n    <TimeInterval type=\"Regular\">\n      <Id idOwner=\"StaffingCompany\">\n        <IdValue>1234567890</IdValue>\n      </Id>\n      <StartTimeDate>2026-12-31</StartTimeDate>\n      <EndTimeDate>2026-12-31</EndTimeDate>\n      <RateOrAmount currency=\"EUR\" type=\"hourly\" multiplier=\"100\">30</RateOrAmount>\n    </TimeInterval>\n    <Allowance type=\"102B\">\n      <Id idOwner=\"StaffingCustomer\">\n        <IdValue name=\"allowance\">TC00123456-4</IdValue>\n      </Id>\n      <Amount currency=\"EUR\">14.00</Amount>\n      <Quantity>2</Quantity>\n    </Allowance>\n  </ReportedTime>\n  <SubmitterInfo>\n    <Source>Dyflexis</Source>\n    <SubmittedDateTime>2026-11-02T06:30:00+1:00</SubmittedDateTime>\n  </SubmitterInfo>\n  <ApprovalInfo>\n    <ApprovedDateTime>2026-11-01T09:31:14+1:00</ApprovedDateTime>\n  </ApprovalInfo>\n  <AdditionalData>\n    <StaffingAdditionalData>\n      <CustomerReportingRequirements>\n        <AdditionalRequirement requirementTitle=\"InclusiveRate\">true</AdditionalRequirement>\n      </CustomerReportingRequirements>\n      <ReferenceInformation>\n        <StaffingCustomerId idOwner=\"StaffingCompany\">\n          <IdValue>223445</IdValue>\n        </StaffingCustomerId>\n        <AssignmentId idOwner=\"StaffingCompany\">\n          <IdValue>1234/1234561</IdValue>\n        </AssignmentId>\n      </ReferenceInformation>\n    </StaffingAdditionalData>\n  </AdditionalData>\n</TimeCard>\n","id":"paths/timeCard/post/requestBody/content/application~1xml/example"}},"securitySchemeStore":{"apiKey":{"id":"apiKey","type":"apiKey","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" Authenticate with the API key issued to you by Dyflexis."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The wire format is:"},"children":[]}]}]},{"$$mdtype":"Node","type":"fence","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"Authorization: Token YOUR_AUTH_TOKEN\n"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"In the Try-it console, the "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Security"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" tab comes pre-filled:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Replace "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"YOUR_AUTH_TOKEN"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" with your"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API key, keeping the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Token "},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"API keys are scoped to permissions ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"clock"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"absence"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_employees"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_data"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"employee_mappings"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attendance_registration"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":","},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"information_lines"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payroll_hours"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"forecasting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"setu"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":");"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the required scope is shown on each operation."},"children":[]}]}]}],"in":"header","paramName":"Authorization"},"XDyflexisAuthToken":{"id":"XDyflexisAuthToken","type":"apiKey","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Legacy authentication for the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"v0"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" endpoints only: send the API"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"key issued to you by Dyflexis in the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"X-Dyflexis-AuthToken"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"header, without a prefix. Every other endpoint authenticates"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Token ..."},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header instead."},"children":[]}]}]}],"in":"header","paramName":"X-Dyflexis-AuthToken"}},"servers":[{"url":"/_mock/openapi","isMockServer":true,"description":"Mock server"},{"url":"https://app.dyflexis.com/{systemName}","description":"Production","variables":{"systemName":{"default":"your-tenant","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required."},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" The tenant identifier (also called the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"em","inline":true,"attributes":{"marker":"*"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"system name"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") of the customer envoirement you are integrating with."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The system name is set by Dyflexis when the customer's"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"environment is created and is "},"children":[]},{"$$mdtype":"Node","type":"strong","inline":true,"attributes":{"marker":"**"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"provided to you by the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"customer"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" when they connect your integration, partners"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"do not pick or generate this value themselves. The same"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"value is what the customer sees as the first path segment"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"of their own Dyflexis URL"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"https://app.dyflexis.com/<systemName>/..."},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"), so if you"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"are unsure of the value for a particular customer, ask"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"them or have them check their browser address bar. The"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"same system name is used for every endpoint on every API"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"version."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The default "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"your-tenant"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" shown here is a placeholder and"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"must be replaced with the customer's real system name"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"before sending a request."},"children":[]}]}]}]}}}],"logo":{"imageUrl":"logo-dyflexis.svg","href":"https://dyflexis.com","altText":"Dyflexis"}},"options":{"codeSamples":{"languages":[{"lang":"curl"},{"lang":"JavaScript"},{"lang":"Node.js"},{"lang":"Python"},{"lang":"PHP"},{"lang":"Go"}]},"hideReplay":false,"corsProxyUrl":"","hideSidebar":true,"mockServer":{"url":"/_mock/openapi","position":"first","description":"Mock server"},"disableRouter":true,"downloadUrls":[{"url":"/_bundle/openapi.json?download"},{"url":"/_bundle/openapi.yaml?download"}],"excludeFromSearch":false,"specType":"openapi","markdocOptions":{"tags":{},"nodes":{},"components":{}},"metadata":{"title":"Dyflexis API","description":"Dyflexis is a complete **workforce management platform** that\nbrings staff scheduling, time tracking and attendance, leave and\nabsence, AI-powered demand forecasting, payroll, performance\nmanagement, skills management, and an employee hub with chat\ntogether in one system. The Dyflexis API gives you programmatic access to the\nworkforce data behind that platform, the (automated) staff\nplanning, time tracking, payrolling, absence management, workload\ninformation, and staff capacity that Dyflexis manages.\n\nEndpoints are organised by resource, **Employees**, **Contracts**,\n**Time clock**, **Payroll**, **Absence**, **Information streams**, and\nso on. The version of each endpoint (`v0`, `api2`, `v3`) lives in the\nURL; you can mix versions in the same integration.\n\n## Base URL\n\n```\nhttps://app.dyflexis.com/{systemName}\n```\n\nReplace `{systemName}` with the tenant identifier of the\ncustomer you are integrating with, the customer provides this\nvalue to you when they connect your integration (see the\n[`systemName` server variable](#section/Servers) below for\ndetails on where to find it). Every server URL in this\nspecification (and any new environment added in the future)\nstarts with this base; new environments extend it with\nadditional path segments rather than introducing a different\nhost. This is enforced by the `rule/server-url-base` lint\nassertion in `redocly.yaml`. Each version has its own URL\nprefix under that base:\n\n| Version | Prefix | Status |\n| --- | --- | --- |\n| v3 | `/api/<resource>/v3/...` | Latest production, preferred for new integrations |\n| api2 (v2) | `/api2/...` | Stable production, use when no v3 equivalent exists |\n| v0 | `/api/v0/...` | Legacy, one endpoint kept for existing Business Intelligence consumers |\n\n## Authentication\n\nAlmost every endpoint requires an API key, sent in the\n`Authorization` header with the `Token` prefix:\n\n```\nAuthorization: Token YOUR_AUTH_TOKEN\n```\n\n`YOUR_AUTH_TOKEN` is the API key issued to you by Dyflexis.\n\nTo call an endpoint directly from these docs: open the\noperation, click **Try it**, and open the **Security** tab of\nthe request panel. **Name** is pre-filled with `Authorization`\nand **API key** with `Token YOUR_AUTH_TOKEN`; replace\n`YOUR_AUTH_TOKEN` with your API key, keeping the `Token `\nprefix. The key is kept in your browser's session storage only\nand is cleared when the session ends.\n\n### API scopes\n\nEach token is issued with one or more **scopes** that gate which\nparts of the API it can call. A scope is a named permission on the\ntoken (for example `business`, `clock`, `payroll`, `absence`,\n`external_employees`, `information_lines`); every operation\ndeclares the scope it requires, and the scope must be **enabled on\nyour token** before that operation will accept the request. A\ntoken without the required scope is rejected with `403 Forbidden`,\neven when the token itself is otherwise valid.\n\nScopes are issued per integration, you do not pick them yourself.\nAsk a Dyflexis administrator to enable the scopes you need when you request your\ntoken. The required scope is listed on each operation.\n\n## Timezones\n\nAll date and time values in this API are expressed in the\n**timezone configured on the customer's Dyflexis tenant**, not\nUTC and not the partner's local timezone. A shift returned as\nstarting at `09:00` starts at `09:00` in the customer's\nconfigured timezone, regardless of where your client is\nrunning, and a timestamp you send in is interpreted the same\nway. The tenant timezone is a per-customer setting; if you\nintegrate with customers in different countries, treat the\ntimezone as a per-tenant property and read or store it\nalongside the data you process.\n\n## Errors\n\nThe API returns standard HTTP status codes. Successful responses are\nin the `2xx` range; client errors in the `4xx` range; server errors in\nthe `5xx` range.\n\n| Code | Meaning |\n| --- | --- |\n| `200 OK` | Request succeeded |\n| `201 Created` | Resource created |\n| `400 Bad Request` | Validation failed or the payload was malformed |\n| `401 Unauthorized` | Missing or invalid authentication |\n| `403 Forbidden` | Token does not include the required scope |\n| `404 Not Found` | Resource or path does not exist |\n| `429 Too Many Requests` | Rate limit exceeded, back off and retry |\n| `500 Internal Server Error` | Unexpected server error |\n| `503 Service Unavailable` | Upstream system temporarily unavailable |\n\nError bodies are returned as `application/json` **only when the request\nsends an `Accept: application/json` header**; without it the API may\nreturn an HTML error page instead, so always send that header. A JSON\nerror body has the fields `title`, `status`, `detail`, `message` (the\nsame text as `detail`), and `code`. Validation failures (`400`) add a\n`violations` array with one entry per invalid field (`propertyPath`,\n`title`, `type`).\n\n## Rate limiting\n\nRequests are rate-limited per token. When a token exceeds the limit,\nrequests return `429 Too Many Requests`. Implement exponential backoff\non `429` and `5xx` responses, and avoid tight polling loops.\n\n## Pagination\n\nList endpoints paginate with a `page` query parameter (or a path\nsegment, depending on the version). Where supported, responses\ninclude a `_links` block with `self`, `next`, `prev`, `first`, and\n`last` URLs you can follow without recomputing.\n","summary":"REST API for the Dyflexis workforce management platform."}},"baseSlug":"/openapi","routesMapping":{}}