Fivexer Roster API

The roster API from Fivexer — 90 operation(s) for roster.

Operations 112

GET /public/rota/{token} A published rota, as a public page shows it (no authentication) #
GET /public/rota/{token}/calendar.ics One person's shifts from a public rota page, as a calendar feed (no… #
GET /v1/roster/public-pages List public rota pages #
POST /v1/roster/public-pages Create a public rota page for a site, a team or both #
PATCH /v1/roster/public-pages/{id} Turn a public rota page on or off, or change who can read it #
DELETE /v1/roster/public-pages/{id} Delete a public rota page #
GET /v1/roster/cycles List planning cycles #
GET /v1/roster/cycles/runs List planning cycle runs #
GET /v1/roster/cycles/runs/{id} Read a planning cycle run and its log #
POST /v1/roster/cycles/runs/{id}/remind Remind a planning run's crew to send their wishes #
POST /v1/roster/cycles/runs/{id}/hold Hold a planned rota so it does not go out on its own, or release it #
POST /v1/roster/cycles/runs/{id}/waive-drafts Waive a planned run's current draft busy periods so it can publish without them #
POST /v1/roster/cycles/runs/{id}/replan Send a planned run back to be solved again, at once #
POST /v1/roster/cycles/runs/{id}/approve Approve a planned rota: publish it now and offer its empty shifts #
POST /v1/roster/cycles/preview Preview the dates a planning cycle would give #
GET /v1/roster/cycles/{scope} Read a planning cycle #
PUT /v1/roster/cycles/{scope} Save a planning cycle #
GET /v1/roster/settings Read rostering settings #
PUT /v1/roster/settings Update rostering settings #
GET /v1/roster/holiday-locations Countries and regions the holiday calendar covers #
GET /v1/roster/holidays Public holidays in a window, from the workspace’s calendar #
GET /v1/roster/pay Read the workspace pay setup #
PUT /v1/roster/pay Update the workspace pay setup #
GET /v1/roster/terms/{workerId}/tax-profile One worker's statutory tax profile #
GET /v1/roster/tax-jurisdictions The countries whose payroll rules this deployment ships #
GET /v1/roster/terms Every worker's terms — contract, rate, overtime consent #
GET /v1/roster/terms/{workerId}/preferences Read one worker's schedule wishes #
PUT /v1/roster/terms/{workerId}/preferences Replace one worker's schedule wishes #
PUT /v1/roster/terms/{workerId} Replace one worker's terms #
GET /v1/roster/planned-hours Planned hours by worker and pay bracket, from the rota #
GET /v1/roster/starting-points Rule packs, shift patterns and site shapes to start from #
POST /v1/roster/patterns/{id}/apply Create a shift pattern’s templates #
GET /v1/roster/templates List shift templates #
POST /v1/roster/templates Create a shift template #
PATCH /v1/roster/templates/{id} Update a shift template #
DELETE /v1/roster/templates/{id} Delete a shift template #
POST /v1/roster/site-shapes/{id}/apply Seed a coverage grid from a site shape #
GET /v1/roster/coverage Stations, bands and the shifts that fill them #
DELETE /v1/roster/coverage Empty the coverage grid #
GET /v1/roster/sites List sites and their travel times #
POST /v1/roster/sites Create a site #
PATCH /v1/roster/sites/{id} Update a site or its travel times #
DELETE /v1/roster/sites/{id} Delete a site #
GET /v1/roster/geocode Find a place by address #
POST /v1/roster/sites/travel/estimate Estimate travel times between sites #
GET /v1/roster/stations List coverage posts #
POST /v1/roster/stations Create a coverage post #
PATCH /v1/roster/stations/{id} Update a coverage post #
DELETE /v1/roster/stations/{id} Delete a coverage post and its shifts #
GET /v1/roster/bands List shift bands #
POST /v1/roster/bands Create a shift band #
PATCH /v1/roster/bands/{id} Update a shift band and the shifts in it #
DELETE /v1/roster/bands/{id} Delete a shift band and its shifts #
PUT /v1/roster/coverage/{stationId}/{bandId} Replace the shifts in one coverage cell #
GET /v1/rosters List rosters overlapping a window #
POST /v1/rosters Create a draft roster #
GET /v1/rosters/{id} Get a roster with its grid and assignments #
PATCH /v1/rosters/{id} Update a roster’s name, team, staffing strategy or time zone #
DELETE /v1/rosters/{id} Delete a roster #
PUT /v1/rosters/{id}/demand Set what a draft roster needs on particular dates #
GET /v1/rosters/{id}/versions List a roster’s versions #
PUT /v1/rosters/{id}/assignments Replace a roster’s assignments, creating a version #
POST /v1/rosters/{id}/lint Check a roster against every rule #
POST /v1/rosters/{id}/explain Explain whether one person can take one shift #
POST /v1/rosters/{id}/candidates Rank who could take a shift, with reasons #
POST /v1/rosters/{id}/diagnose Diagnose an unstaffable roster #
POST /v1/rosters/{id}/cover Report an absence and open the shifts it leaves short #
GET /v1/rosters/{id}/cover Absences on this roster that need cover #
GET /v1/rosters/{id}/cover/{coverId}/candidates Who can cover, nearest first #
POST /v1/rosters/{id}/cover/{coverId}/openings/{openingId}/fill Assign a replacement to one open shift #
POST /v1/rosters/{id}/cover/{coverId}/openings/{openingId}/drop Leave one shift uncovered, on purpose #
POST /v1/rosters/{id}/cover/{coverId}/extend Change the last day of an absence #
POST /v1/rosters/{id}/cover/{coverId}/shorten End an absence earlier #
POST /v1/rosters/{id}/cover/{coverId}/cancel Withdraw an absence report #
POST /v1/rosters/{id}/cover/{coverId}/openings/{openingId}/offer Offer one shift to several people; first to accept wins #
POST /v1/rosters/{id}/solve Queue a solve for a roster #
GET /v1/rosters/{id}/solve Read the latest solve job #
POST /v1/rosters/{id}/solve/finish Stop a running solve early and keep its best roster #
POST /v1/rosters/{id}/solve/cancel Cancel a running solve #
GET /v1/rosters/{id}/publish/preflight What publishing would change #
POST /v1/rosters/{id}/publish Publish a roster version #
POST /v1/rosters/{id}/open-shifts Post a shift to the team for anybody eligible to claim #
GET /v1/roster/open-shifts Shifts posted to the team and still unclaimed #
GET /v1/roster/swaps Shift swaps #
POST /v1/roster/swaps/{id}/apply Approve and apply a proposed swap #
POST /v1/roster/swaps/{id}/decline Decline a proposed swap #
GET /v1/roster/agreements List working agreements #
PUT /v1/roster/agreements/{name} Create or update a working agreement #
DELETE /v1/roster/agreements/{id} Delete a working agreement #
GET /v1/roster/rules/effective/{workerId} The rules that apply to one worker #
GET /v1/leave/types List leave types #
PUT /v1/leave/types/{code} Create or update a leave type #
DELETE /v1/leave/types/{id} Retire a leave type #
GET /v1/leave/policies List leave policies #
PUT /v1/leave/policies/{workerId}/{leaveTypeId} Set a worker’s leave policy for one type #
DELETE /v1/leave/policies/{workerId}/{leaveTypeId} Remove a worker’s leave policy for one type #
GET /v1/leave/balances Leave balances #
GET /v1/leave/ledger Read the leave ledger #
POST /v1/leave/adjustments Adjust a leave balance #
GET /v1/timeoff List time-off requests #
POST /v1/timeoff Record time off — a request, or leave already agreed #
GET /v1/timeoff/preview What recording this time off would do, before it is recorded #
GET /v1/timeoff/{id}/impact What approving this request would cost #
PATCH /v1/timeoff/{id} Change the dates, kind, type or portion of time off this workspace owns #
POST /v1/timeoff/{id}/resolve-conflict Keep this version or the HR system’s, where the two disagree #
POST /v1/timeoff/{id}/approve Approve a time-off request #
POST /v1/timeoff/{id}/cancel Cancel an approved time-off request and give the entitlement back #
POST /v1/timeoff/{id}/deny Deny a time-off request #
GET /v1/workers/{id}/absences One person’s leave and sick calls, newest first #
GET /v1/timeoff/off-today Who is off today, and until when #
POST /v1/timeoff/{id}/decline-cancel Keep approved leave a worker asked to cancel #
POST /v1/timeoff/{id}/retry-push Send time off the HR system refused again #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/5xer-com:5xer-com-roster-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

5xer-com-roster-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Fivexer Platform Roster API
  description: 'Routing-as-a-service: create workers and tasks, the platform matches continuously. `/v1` authenticates with a workspace API key (`Authorization: Bearer sk_...`); `/console` with a session token from `/auth`; `/admin` with the operator token.'
  version: 0.1.0
servers:
- url: https://5xer.com
  description: This deployment
tags:


# --- truncated at 32 KB (123 KB total) ---
# Full source: https://artifacts.apis.io/5xer-com/openapi/5xer-com-roster-api-openapi.yml