{
 "categories": [
  "workforce-management",
  "hr"
 ],
 "deployment": "saas",
 "evidence": [
  {
   "date": "2026-09-04",
   "fact": "homepage",
   "note": "Planday presents a commercial workforce-management platform for scheduling, mobile team management, communication, reporting, payroll, and working-time compliance.",
   "source": "https://www.planday.com/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "platforms",
   "note": "The homepage describes a cloud web product and a free Planday app on iOS and Android for clock-in, communication, and related employee tasks.",
   "source": "https://www.planday.com/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "license",
   "note": "Planday offers a free 30-day trial and paid demo or get-started paths. This is commercial SaaS, not a permanent free product.",
   "source": "https://www.planday.com/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "license",
   "note": "Planday's Open API help article states Access level Administrator with access to all departments and Subscription plan Plus, Pro, Enterprise.",
   "source": "https://help.planday.com/en/articles/30402-how-to-use-open-api-to-integrate-with-planday",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "modalities.api.exists",
   "note": "The Planday Developer hub presents Planday's API for building integrations and links getting-started, guides, and named API families.",
   "source": "https://developer.planday.com/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "modalities.api.kinds[0]",
   "note": "Planday states that its REST API uses JSON request and response bodies, entity IDs in JSON models, and separate domains such as HR and Absence. Most endpoints paginate and return a maximum of 50 records per page.",
   "source": "https://developer.planday.com/gettingstarted/overview/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "modalities.api.auth[0]",
   "note": "Access is OAuth2. Customers create an application in Settings > Integrations > API Access, authorize it, and exchange the refresh token at https://id.planday.com/connect/token. Partners use the authorization-code flow. Every resource call requires X-ClientId and Authorization Bearer. An example is GET https://openapi.planday.com/hr/v1/Departments.",
   "source": "https://openapi.planday.com/gettingstarted/authorization/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "modalities.api.coverage",
   "note": "The developer portal separates the API into domains and points integrators at the API section. Coverage is the published families, not an unnamed extra surface.",
   "source": "https://developer.planday.com/gettingstarted/overview/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "modalities.api.coverage",
   "note": "The HR family page states the HR API syncs employee details between Planday and other systems. Sibling nav names Absence, Contract rules, HR, Pay, Payroll, Portal, Punchclock, Reports, Revenue, Schedule, and Security group membership.",
   "source": "https://developer.planday.com/api/hr/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "modalities.api.coverage",
   "note": "The Contract rules family page says the API sets a contract rule on employees and that this API does not support portals located in Australia.",
   "source": "https://developer.planday.com/api/contractrules/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "modalities.api.docs",
   "note": "Opened as the current getting-started overview after https://developer.planday.com/docs/getting-started returned 404. It documents OAuth2 bearer access, JSON REST domains, 50-record pagination, demo-portal request, and in-portal Create app.",
   "source": "https://developer.planday.com/gettingstarted/overview/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "modalities.data_access.export[0]",
   "note": "The employee-management guide documents GET employees and GET employee-by-id JSON reads, including custom fields on the by-id response.",
   "source": "https://developer.planday.com/guides/hr-guide/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "modalities.data_access.import[0]",
   "note": "The same guide documents create, update, and deactivate employees, plus PUT pay-rate, salary, and contract-rule assignment. The time-clock guide documents POST punch-in and PUT punch-out.",
   "source": "https://developer.planday.com/guides/hr-guide/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "modalities.agent_docs.llms_txt",
   "note": "https://developer.planday.com/llms.txt and https://openapi.planday.com/llms.txt returned 404 on 2026-09-04. https://www.planday.com/llms.txt served the marketing HTML shell, not an agent documentation file.",
   "source": "https://developer.planday.com/llms.txt",
   "tier": "scraped"
  },
  {
   "date": "2026-09-04",
   "fact": "verdict.scores.api",
   "note": "Planday documents a broad production OAuth2 REST surface with write coverage across scheduling, punch clock, HR, pay, and related families. Plus/Pro/Enterprise entitlement, immutable app scopes, 50-record pages, and the Contract rules Australia limitation keep the path in the practical-and-broad band, not unusually complete tooling.",
   "source": "https://openapi.planday.com/gettingstarted/authorization/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "freshness.watch[0].url",
   "note": "Opened and verified as the current Planday Developer hub, which points to getting started, guides, and APIs.",
   "source": "https://developer.planday.com/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "freshness.watch[1].url",
   "note": "Opened and verified as the current getting-started overview, including OAuth2, JSON REST domains, pagination, and in-portal app creation.",
   "source": "https://developer.planday.com/gettingstarted/overview/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "freshness.watch[2].url",
   "note": "Opened and verified as the current authorization guide for customer refresh-token exchange, partner authorization-code flow, required headers, and the Departments example.",
   "source": "https://openapi.planday.com/gettingstarted/authorization/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "freshness.watch[3].url",
   "note": "Opened and verified as the current Contract rules API family page. It still states that this API does not support portals located in Australia.",
   "source": "https://developer.planday.com/api/contractrules/",
   "tier": "declared"
  },
  {
   "date": "2026-09-04",
   "fact": "freshness.watch[4].url",
   "note": "Opened and verified as the current Punch Clock integration guide, including GET punchclockshifts and POST/PUT punch-in and punch-out paths.",
   "source": "https://developer.planday.com/guides/timeclock-guide/",
   "tier": "declared"
  }
 ],
 "freshness": {
  "last_verified": "2026-09-04",
  "volatility": "medium",
  "watch": [
   {
    "type": "docs",
    "url": "https://developer.planday.com/"
   },
   {
    "type": "docs",
    "url": "https://developer.planday.com/gettingstarted/overview/"
   },
   {
    "type": "docs",
    "url": "https://openapi.planday.com/gettingstarted/authorization/"
   },
   {
    "type": "docs",
    "url": "https://developer.planday.com/api/contractrules/"
   },
   {
    "type": "docs",
    "url": "https://developer.planday.com/guides/timeclock-guide/"
   }
  ]
 },
 "homepage": "https://www.planday.com/",
 "id": "planday",
 "license": "commercial",
 "modalities": {
  "agent_docs": {
   "llms_txt": false
  },
  "api": {
   "auth": [
    "oauth2"
   ],
   "coverage": "partial",
   "docs": "https://developer.planday.com/gettingstarted/overview/",
   "exists": true,
   "kinds": [
    "rest"
   ]
  },
  "cli": {
   "exists": "unknown"
  },
  "computer_use": {
   "issues": [],
   "viability": "unknown"
  },
  "data_access": {
   "export": [
    "json"
   ],
   "import": [
    "json"
   ]
  },
  "extensibility": {
   "scripting": [],
   "webhooks": "unknown"
  },
  "integrations": {
   "make": "unknown",
   "n8n": "unknown",
   "power_automate": "unknown",
   "zapier": "unknown"
  },
  "mcp": {
   "first_party": "unknown",
   "third_party": [],
   "verdict": "unknown"
  },
  "rpa": {
   "drivability": "unknown",
   "notes": "No repeatable UI probe was run. Daily scheduling, punch-clock, and payroll work is a cloud web product with an iOS and Android app. The documented automation path is the Planday Open API, not visual control of the planner or employee app.\n",
   "ui_stack": [
    "web-dom",
    "mobile-app"
   ],
   "vendor_support": []
  },
  "sdk": {
   "exists": "unknown",
   "languages": [],
   "official": "unknown"
  }
 },
 "name": "Planday",
 "platforms": [
  "web",
  "ios",
  "android"
 ],
 "related": {
  "alternatives": [
   "visma-gat",
   "simployer",
   "4human-hrm"
  ],
  "our_products": []
 },
 "schema_version": 1,
 "score_version": 1,
 "status": "active",
 "vendor": "Planday",
 "verdict": {
  "best_path": "api",
  "scores": {
   "api": 7,
   "cli": null,
   "computer_use": null,
   "integrations": null,
   "mcp": null,
   "overall": 7,
   "rpa": null
  },
  "summary": "Planday is automatable today through its OAuth2 REST Open API. This record is Planday workforce management, not Quinyx, Visma GAT, Simployer, or 4human. The live getting-started page is /gettingstarted/overview/; /docs/getting-started returned 404. Administrators on Plus, Pro, or Enterprise create an API application under Settings \u2192 Integrations \u2192 API Access, choose scopes (new scopes cannot be added after the app is created), and authorize it on each portal. Customers exchange the portal refresh token at https://id.planday.com/connect/token with grant_type=refresh_token. Product partners use the authorization-code flow at https://id.planday.com/connect/authorize, then the same token endpoint. Access tokens last one hour. Every API call needs X-ClientId and Authorization Bearer. Opened families are Absence, Contract rules, HR, Pay, Payroll, Portal, Punchclock, Reports, Revenue, Schedule, and Security group membership. Documented writes include creating and updating employees and shifts, punch-in and punch-out, pay rates and salaries, contract-rule assignment, absence adjustments, and revenue budgets. Requests and responses are JSON. Most list endpoints paginate at 50 records. The Contract rules API still states it does not support portals located in Australia. Open API access is documented for Plus, Pro, and Enterprise. Official SDKs, a Planday CLI, webhooks, iPaaS connectors, and first-party MCP ownership were not established. Computer-use viability is unassessed.\n"
 }
}