Skip to main content

crisphive

Public REST API for integrating Crisphive from your own backend. Authenticate every request with a secret API key as a Bearer token (Authorization: Bearer chsk_live_…). The key prefix selects the data environment: chsk_live_… → production (live), chsk_test_… → sandbox (isolated test).

Key scopes (restricted keys). A key is either full-access (can call every endpoint below) or restricted to a set of permission codes chosen at creation — the same codes as the dashboard permission grid (e.g. customers_view, job_create, team_manage). A restricted key calling an endpoint outside its scope gets 403. The full code list is the permission catalog (GET /permission/modules on the dashboard API). Create, scope, and revoke keys from the business dashboard.

Every response is wrapped in the envelope { \"error_code\": 0, \"message\": \"Success\", \"data\": <payload> }.

This Python package is automatically generated by the OpenAPI Generator project:

  • API version: 1.0
  • Package version: 0.2.0
  • Generator version: 7.11.0
  • Build package: org.openapitools.codegen.languages.PythonClientCodegen

Requirements.

Python 3.8+

Installation & Usage

pip install

If the python package is hosted on a repository, you can install directly using:

pip install git+https://github.com/crisphive/crisphive-python.git

(you may need to run pip with root permission: sudo pip install git+https://github.com/crisphive/crisphive-python.git)

Then import the package:

import crisphive

Setuptools

Install via Setuptools.

python setup.py install --user

(or sudo python setup.py install to install the package for all users)

Then import the package:

import crisphive

Tests

Execute pytest to run the tests.

Getting Started

Please follow the installation procedure and then run the following:

import crisphive
from crisphive.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.crisphive.com/v1
# See configuration.py for a list of all supported configuration parameters.
configuration = crisphive.Configuration(
    host = "https://api.crisphive.com/v1"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure Bearer authorization (Crisphive secret key): ApiKeyAuth
configuration = crisphive.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)


# Enter a context with an instance of the API client
with crisphive.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = crisphive.BusinessSkillApi(api_client)
    page = 56 # int | Page number (default: 1) (optional)
    limit = 56 # int | Page size (default: 15, max: 1000) (optional)

    try:
        # List skill categories
        api_response = api_instance.list_skill_categories(page=page, limit=limit)
        print("The response of BusinessSkillApi->list_skill_categories:\n")
        pprint(api_response)
    except ApiException as e:
        print("Exception when calling BusinessSkillApi->list_skill_categories: %s\n" % e)

Documentation for API Endpoints

All URIs are relative to https://api.crisphive.com/v1

Class Method HTTP request Description
BusinessSkillApi list_skill_categories GET /skill-categories List skill categories
BusinessSkillApi list_skills GET /skills List all skills
BusinessSkillApi list_skills_by_category GET /skill-categories/{id}/skills List skills in a category
BusinessSkillApi list_technician_skills GET /technicians/{id}/skills List skills for a technician
BusinessSkillApi replace_technician_skills PATCH /technicians/{id}/skills Replace a technician's skills
CustomerApi create_customer POST /customers Create a customer
CustomerApi delete_customer DELETE /customers/{id} Delete a customer
CustomerApi get_customer GET /customers/{id} Get a customer
CustomerApi list_customers GET /customers List customers
CustomerApi update_customer PUT /customers/{id} Update a customer
JobRequestBusinessApi commit_emergency_reschedule POST /job-requests/emergency/commit Commit emergency insert + cascade reschedule
JobRequestBusinessApi commit_job_request_move POST /job-requests/{id}/move/commit Commit a schedule-board job move
JobRequestBusinessApi confirm_job_request POST /job-requests/{id}/confirm Confirm a booking on behalf of the customer
JobRequestBusinessApi create_job_request POST /job-requests Create a job request
JobRequestBusinessApi get_job_request GET /job-requests/{id} Get a job request
JobRequestBusinessApi get_job_request_timeline GET /job-requests/{id}/timeline Job timeline
JobRequestBusinessApi get_technician_schedule GET /technicians/{id}/schedule One technician's real schedule (sessions + time off)
JobRequestBusinessApi list_crew_candidates GET /job-requests/{id}/crew-candidates Matching crew candidates for a job
JobRequestBusinessApi list_emergency_candidates POST /job-requests/emergency/candidates Rank technicians for a P0 emergency insert
JobRequestBusinessApi list_job_request_booking_windows GET /job-requests/booking-windows Booking availability
JobRequestBusinessApi list_job_request_changes GET /job-requests/changes Poll for new & changed job requests (sync feed)
JobRequestBusinessApi list_job_requests GET /job-requests List job requests
JobRequestBusinessApi list_matching_slots GET /job-requests/{id}/time-segments Matching time slots for a quoted job
JobRequestBusinessApi list_nearby_technicians GET /technicians/nearby Find nearby feasible technicians (job-less location query)
JobRequestBusinessApi preview_emergency_reschedule POST /job-requests/emergency/preview Preview emergency insert + cascade reschedule
JobRequestBusinessApi preview_job_request_move POST /job-requests/{id}/move/preview Preview a schedule-board job move
JobRequestBusinessApi quote_job_request POST /job-requests/{id}/quote Fire quote (FIXED action — business)
JobRequestBusinessApi update_job_priority PATCH /job-requests/{id}/priority Set job priority (scheduling staff)
JobTypesApi get_job_type GET /job-types/{id} Get a job type
JobTypesApi list_job_types GET /job-types List job types
ServiceAreaApi get_service_area GET /service-areas/{id} Get a service area
ServiceAreaApi list_service_areas GET /service-areas List service areas
TechnicianApi create_technician POST /technicians Add a technician
TechnicianApi delete_technician DELETE /technicians/{id} Remove a technician
TechnicianApi get_technician GET /technicians/{id} Get a technician
TechnicianApi list_technicians GET /technicians List technicians
TechnicianApi replace_technician_buddies PUT /technicians/{id}/buddies Replace a technician's buddies
TechnicianApi replace_technician_leads PUT /technicians/{id}/leads Replace a buddy's leaders (buddy side)
TechnicianApi replace_technician_service_areas PUT /technicians/{id}/service-areas Replace a technician's service areas
TechnicianApi replace_technician_vehicles PUT /technicians/{id}/vehicles Replace a technician's vehicles
TechnicianApi update_technician PUT /technicians/{id} Update a technician
VehicleApi get_vehicle GET /vehicles/{id} Get a vehicle
VehicleApi list_vehicles GET /vehicles List vehicles

Documentation For Models

Documentation For Authorization

Authentication schemes defined for the API:

ApiKeyAuth

  • Type: Bearer authentication (Crisphive secret key)

Author

Metadata

Release files for crisphive 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for crisphive 0.2.0
File Size Uploaded
crisphive-0.2.0.tar.gz 113.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for crisphive 0.2.0
File Interpreter ABI Platform
crisphive-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 489.9 kB

Release files / crisphive-0.2.0.tar.gz

Download URL crisphive-0.2.0.tar.gz
Size 113.3 kB
Tags Source
SHA-256 checksum
How to use checksums
fb1ef4485bb368a313df43a2d9cefa47547059b009c1abd98db72c2be7116827
BLAKE2b-256 checksum
How to use checksums
f824833eae1cdc21434a319d18cde72783d3f57732a4a9bc3cce9cbae244c949
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.9

Release files / crisphive-0.2.0-py3-none-any.whl

Download URL crisphive-0.2.0-py3-none-any.whl
Size 376.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5e990662c48a30d97d8aa2e15fc0504aa4bf230d7122ebcdcfff629e8bf7d4a2
BLAKE2b-256 checksum
How to use checksums
a650f08b4f6a9a9bc13ae64659de969e5f2d1d8bdc2647da042a2604ea1dd562
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.9

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page