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

Professional Services Quick Start

Get up and running in minutes

Professional Services Quick Start Guide

Get up and running with PlanSolve's professional services optimization in just a few minutes. Follow this step-by-step guide to implement resource allocation in your application.

Prerequisites

PlanSolve Account

Sign up for a free account at plansolve.app

API Key

Get your API key from the dashboard

Development Environment

Node.js, .NET, or any HTTP client

Basic Programming Knowledge

Familiarity with REST APIs and JSON

Step-by-Step Implementation

1

Set up your environment

Install the PlanSolve SDK for your preferred programming language

typescript
npm install @plansolve/sdk

Choose from our official SDKs: TypeScript/JavaScript, .NET, or use our REST API directly.

2

Create a client instance

Initialize the PlanSolve client with your API key

typescript
const client = new PlanSolveClient('your-api-key-here');

Your API key can be found in your PlanSolve dashboard under API settings.

3

Define your employees

Specify staff members, their skills, availability, and preferences

typescript
employees: [{
  id: 'emp1',
  name: 'John Doe',
  skills: ['development', 'design'],
  availability: [
    { day: 'monday', start: '09:00', end: '17:00' },
    { day: 'tuesday', start: '09:00', end: '17:00' }
  ],
  maxHoursPerWeek: 40
}]

Include all relevant constraints: skills, availability, maximum hours, and any special requirements.

4

Define your projects

Specify project requirements, deadlines, and skill needs

typescript
projects: [{
  id: 'proj1',
  name: 'Website Redesign',
  requiredSkills: ['design', 'development'],
  estimatedHours: 80,
  deadline: '2024-02-15',
  priority: 'high'
}]

Projects should include skill requirements, time estimates, deadlines, and priority levels.

5

Submit optimization request

Send your request to the PlanSolve API

typescript
const result = await client.professionalServices.solve({
  employees,
  projects,
  startDate: '2024-01-15',
  endDate: '2024-02-15'
});

The API will return a job ID that you can use to check status and retrieve results.

6

Retrieve results

Get the optimized project assignments and schedules

typescript
const assignments = await client.professionalServices.getResult(result.jobId);
console.log('Optimized assignments:', assignments);

Results include detailed project assignments, time allocations, and optimization metrics.

Complete Example

TypeScript/JavaScript Example

typescript
import { PlanSolveClient } from '@plansolve/sdk';

async function optimizeProfessionalServices() {
  // Initialize client
  const client = new PlanSolveClient('your-api-key-here');

  // Define employees
  const employees = [{
    id: 'emp1',
    name: 'John Doe',
    skills: ['development', 'design'],
    availability: [
      { day: 'monday', start: '09:00', end: '17:00' },
      { day: 'tuesday', start: '09:00', end: '17:00' }
    ],
    maxHoursPerWeek: 40
  }];

  // Define projects
  const projects = [{
    id: 'proj1',
    name: 'Website Redesign',
    requiredSkills: ['design', 'development'],
    estimatedHours: 80,
    deadline: '2024-02-15',
    priority: 'high'
  }];

  // Submit optimization request
  const result = await client.professionalServices.solve({
    employees,
    projects,
    startDate: '2024-01-15',
    endDate: '2024-02-15'
  });

  // Get results
  const assignments = await client.professionalServices.getResult(result.jobId);
  console.log('Optimized assignments:', assignments);
}

Next Steps

API Reference

Explore the complete API documentation with all available endpoints and parameters.

View API Reference

SDK Documentation

Learn about our official SDKs for TypeScript/JavaScript and .NET.

View SDKs

Ready to Build?

Start implementing professional services optimization in your application today. Our team is here to help you succeed.