PlanSolve is still in pre-alpha – Features may change or break. Feedback welcome!

SDK Documentation

Official SDKs for integrating the Shift Assignment Solver into your applications. Choose your preferred language and get started with optimized shift scheduling.

Available SDKs

🔷

JavaScript/TypeScript

Official SDK for Node.js and browser environments

  • Full TypeScript support
  • Promise-based API
  • Browser and Node.js compatible
  • Built-in error handling
View Documentation
🔶

.NET

Official SDK for .NET applications

  • C# and F# support
  • Async/await patterns
  • Strong typing
  • NuGet package
View Documentation

Quick Installation

JavaScript/TypeScript

npm

npm install @plansolve/shift-solver

yarn

yarn add @plansolve/shift-solver

pnpm

pnpm add @plansolve/shift-solver

.NET

NuGet

dotnet add package PlanSolve.ShiftSolver

Package Manager

Install-Package PlanSolve.ShiftSolver

PackageReference

<PackageReference Include="PlanSolve.ShiftSolver" Version="1.0.0" />

Code Examples

Basic Shift Assignment

Simple example with 3 employees and 3 shifts

View Example

Skill-Based Assignment

Advanced example with skill requirements and preferences

View Example

Fairness Rules

Example with fairness buckets and workload distribution

View Example

Contract Compliance

Example with multiple contract types and constraints

View Example

API Reference

Authentication

All API requests require authentication using your API key.

Authorization: Bearer YOUR_API_KEY

Base URL

All requests should be made to the PlanSolve API endpoint.

https://api.plansolve.com

Rate Limits

API requests are limited based on your subscription plan.

  • • Trial: 10 requests/hour
  • • Basic: 100 requests/hour
  • • Pro: 1000 requests/hour

Error Handling

Common Errors

400 Bad Request

Invalid request format or missing required fields

401 Unauthorized

Invalid or missing API key

429 Too Many Requests

Rate limit exceeded

500 Internal Server Error

Server error, please try again later

Error Response Format

{
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "Invalid request format",
    "details": {
      "field": "employees",
      "issue": "At least one employee is required"
    }
  }
}

Ready to Integrate?

Choose your preferred SDK and start building optimized shift assignments into your application. Need help? Check out our examples or contact support.