AdamRMS API (main)

Download OpenAPI specification:Download

AdamRMS is a free, open source advanced Rental Management System for Theatre, AV & Broadcast. This is the API listing for the v1 API, which is currently in Production and active development. You can find out more about AdamRMS at https://adam-rms.com.

authentication

Authentication

Send Magic Link

Send Magic Login Link by Email to user

query Parameters
formInput
required
string

Email Address to send link to

redirect
required
string

Source to redirect to, must be on allowed list in production

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Signup

Create a new user account

query Parameters
name1
required
string

First Name

name2
required
string

Last Name

password
required
string

Password

username
required
string

Username

email
required
string

Email

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Login

User Login

query Parameters
formInput
required
string

Email Address of user

password
required
string

Password of user

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Forgot Password

Send a password reset email to the user

query Parameters
formInput
required
string

Username

Responses

Response samples

Content type
application/json
{
  • "result": true
}

account

User account management

Permission Management

Manage user pemissions Requires server permission PERMISSIONS:EDIT:USER_POSITION

query Parameters
action
required
string

DELETE, EDIT or new

users_userid
required
string

undefined

userPositions_id
required
string

undefined

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Toggle Widget

Toggle the visibility of a widget on the dashboard

query Parameters
widgetName
required
string

Name of the Widget to toggle

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

View Site As Terminate

Terminate the view site as session

Responses

Soft Delete

Soft delete a user

query Parameters
users_userid
required
string

undefined

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "message": null
}

Change Password

Change the password of the current user

query Parameters
oldpass
required
string

undefined

newpass
required
string

undefined

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Email Viewer

Get the HTML of an email
Requires server permission USERS:VIEW:MAILINGS

query Parameters
email
required
string

undefined

Responses

Password Reset

Act on a password reset code

query Parameters
code
required
string

undefined

Responses

Notifications

Set the notification settings for a user

query Parameters
users_userid
required
string

undefined

settings
required
json

undefined

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Thumbnail

Set the thumbnail for a user

query Parameters
users_userid
required
string

undefined

thumbnail
required
string

undefined

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Verify Email

Verify an email address

query Parameters
code
required
string

undefined

Responses

Resend Verification Email

Resend the verification email to the user

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Disconnect OAuth

Disconnect an OAuth provider

query Parameters
provider
required
string

undefined

users_userid
required
string

undefined

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Accept Tos

Accepts the Terms of Service for the currently logged in user

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Force Password Change

Force a user to change their password

query Parameters
pass
required
string

undefined

Responses

View Site As

View the site as a given user
Requires server permission USERS:VIEW_SITE_AS

query Parameters
users_userid
required
string

undefined

Responses

Suspend

Suspend a user

query Parameters
userid
required
string

undefined

suspendval
required
string

undefined

Responses

Destroy Tokens

Destroy all tokens for a user

query Parameters
userid
required
string

Calendar Export

Get calendar information for integrating with web calendars

query Parameters
uid
required
string

undefined

key
required
string

undefined

Responses

Theme

Set the theme for the current user

query Parameters
dark
required
string

undefined

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Update User Details

Update basic user details

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

permissions

Instance and global prmission management

New Instance Permission

Create a new permission group
Requires Instance Permission BUSINESS:ROLES_AND_PERMISSIONS:CREATE

query Parameters
name
required
string

Permission Group name

Responses

Response samples

Content type
application/json
{
  • "result": true
}

AdamRMS Permission Editor

Edit the permissions of an AdamRMS position
Requires server permission PERMISSIONS:EDIT

query Parameters
position
required
number

Position id

removepermission
required
number

Permission id to remove

addpermission
required
number

Permission id to add

Responses

Instance Permission Editor

Edit the permissions of a position
Requires Instance Permission BUSINESS:ROLES_AND_PERMISSIONS:EDIT

query Parameters
position
required
number

Position id

removepermission
required
number

Permission id to remove

addpermission
required
number

Permission id to add

Responses

assets

Asset management

Create Asset Type

Creates an asset type
Requires Instance Permission ASSETS:ASSET_TYPES:CREATE

query Parameters
required
object

The data to create the asset type from

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "assetTypes_id": 0
}

Simple Asset Search

Searches for assets by tag or name

query Parameters
term
required
string

The term to search for

barcodes
required
boolean

whether to include asset barcodes

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Get Swappable Assets

Gets a list of assets that can be swapped with the given asset assignment

query Parameters
assetsAssignments_id
required
integer

The ID of the asset assignment

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Edit an Asset

Edits an asset's data
Requires Instance Permission ASSETS:EDIT

query Parameters
required
object

The data to update the asset with

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "message": null
}

Export Assets

Exports assets

query Parameters
csv
required
any

Whether to export as a CSV file

xlsx
required
any

Whether to export as an XLSX file

Responses

Response samples

Content type
application/json
{
  • "result": "string"
}

Archive an Asset

Archives an asset
Requires Instance Permission ASSETS:ARCHIVE

query Parameters
assets_id
required
integer

The ID of the asset to archive

reason
required
string

The reason for archiving the asset

date
required
string

The date the asset was archived, usually today

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Asset Type Search

Searches for asset types by name or manufacturer

query Parameters
term
required
string

The term to search for

manufacturer
required
string

The manufacturer to search for

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

List Assets

Lists assets

query Parameters
term
required
string

A search term to filter the list by

page
required
integer

The page number to get

pageLimit
required
integer

The number of items to get per page

category
required
integer

The ID of the asset category to filter by

manufacturer
required
integer

The ID of the manufacturer to filter by

assetTypes_id
required
integer

The ID of the asset type to filter by

all
required
any

Whether to get all linked assets

abridgedList
required
boolean

Whether to get file and flags & blocks

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "assets": [ ],
  • "pagination": 0
}

Edit an Asset Type

Edits an asset type's data
Requires Instance Permission ASSETS:ASSET_TYPES:EDIT

query Parameters
required
object

The data to update the asset type with

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": null
}

Delete an Asset

Deletes an asset
Requires Instance Permission ASSETS:DELETE

query Parameters
assets_id
required
integer

The ID of the asset to delete

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "message": null
}

Edit an Asset Type's Definable Fields

Edits an asset type's definable fields
Requires Instance Permission ASSETS:ASSET_TYPES:EDIT

query Parameters
required
object

The data to update the asset type's definable fields with

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "message": null
}

Create Asset From Type

Creates an asset from an asset type Requires Instance Permission 17 ASSETS:CREATE

query Parameters
required
object

The data to create the asset from

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "assets_id": 0,
  • "assets_tag": "string",
  • "assetTypes_id": 0
}

Get Asset Type Data

Gets data for an asset type

query Parameters
term
required
integer

The ID of the asset type to get data for

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "assetTypes_id": 0,
  • "assetTypes_name": "string",
  • "assetCategories_id": 0,
  • "assetTypes_productLink": "string",
  • "manufacturers_id": 0,
  • "assetTypes_description": "string",
  • "assetTypes_definableFields": "string",
  • "assetTypes_mass": 0,
  • "assetTypes_inserted": "string",
  • "assetTypes_value": "string",
  • "assetTypes_dayRate": 0,
  • "assetTypes_weekRate": 0
}

Search Assets by Barcode

Redirects to assets/barcodes/search.php

Responses

groups

Asset Groups

Create Group

Create a group
Requires Instance Permission ASSETS:ASSET_GROUPS:CREATE

query Parameters
required
object

The group data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Remove Asset from Group

Remove an asset from a group
Requires Instance Permission ASSETS:ASSET_GROUPS:EDIT:ASSETS_WITHIN_GROUP

query Parameters
assetGroups_id
required
integer

The group id

assets_id
required
integer

The asset id

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Add Asset to Group

Add an asset to a group
Requires Instance Permission ASSETS:ASSET_GROUPS:EDIT:ASSETS_WITHIN_GROUP

query Parameters
assetGroups_id
required
integer

The group id

assets_id
required
integer

The asset id

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Search Groups

Search for groups

query Parameters
term
required
string

The search term

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Edit Group

Edit a group
Requires Instance Permission ASSETS:ASSET_GROUPS:EDIT

query Parameters
required
object

The group data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Watch Group

Watch a group

query Parameters
assetGroups_id
required
integer

The group id

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

maintenance

Asset Maintenance

Search User

Search for a user to tag to a maintenance job

query Parameters
term
required
string

Search Term

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

New Job

Create a new maintenance job
Requires Instance Permission ASSETS:ASSET_TYPES:CREATE

query Parameters
required
object

Form Data

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Search Asset

Search for an asset to add to a maintenance job

query Parameters
maintenanceJobs_id
required
number

Maintenance Job ID

term
required
string

Search Term

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

maintenanceJobs

Asset Maintenance Jobs

Change Name

Change the name of a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:NAME

query Parameters
maintenanceJobs_id
required
number

Maintenance Job ID

maintenanceJobs_title
required
string

Maintenance Job Name

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Send Message

Send a message to a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:ADD_MESSAGE_TO_JOB

query Parameters
maintenanceJobs_id
required
number

Maintenance Job ID

maintenanceJobsMessages_text
required
string

Message

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Job Assigned

Change who a maintenance job is assigned to
Requires Instance Permission MAINTENANCE_JOBS:EDIT:USER_ASSIGNED_TO_JOB

query Parameters
maintenanceJobs_id
required
number

Maintenance Job ID

users_userid
required
number

Who the maintenance job is assigned to

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Remove Asset

Remove an asset from a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT

query Parameters
maintenanceJobs_id
required
number

Maintenance Job ID

assets_id
required
number

Asset ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Block

Change the block status of a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:ASSET_BLOCKS

query Parameters
maintenanceJobs_id
required
number

Maintenance Job ID

maintenanceJobs_blockAssets
required
boolean

Maintenance Job Block

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Flag

Change the flag of a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:ASSET_FLAGS

query Parameters
maintenanceJobs_id
required
number

Maintenance Job ID

maintenanceJobs_flagAssets
required
boolean

Whether to flag maintenance job

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Tag User

Tag a user to a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:USERS_TAGGED_IN_JOB

query Parameters
maintenanceJobs_id
required
number

Maintenance Job ID

users_userid
required
number

User ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Add Asset

Add an asset to a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:ADD_ASSETS

query Parameters
maintenanceJobs_id
required
number

Maintenance Job ID

maintenanceJobs_assets
required
Array of arrays

Maintenance Job Assets

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Job Status

Change the status of a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:STATUS

query Parameters
maintenanceJobs_id
required
number

Maintenance Job ID

maintenanceJobsStatuses_id
required
number

Maintenance Job Status id

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Due Date

Change the due date of a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:JOB_DUE_DATE

query Parameters
maintenanceJobs_id
required
number

Maintenance Job ID

maintenanceJobs_timestamp_due
required
string

Maintenance Job Due Date

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Priority

Change the priority of a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:JOB_PRIORITY

query Parameters
maintenanceJobs_id
required
number

Maintenance Job ID

maintenanceJobs_priority
required
number

Maintenance Job Priority

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Untag User

Untag a user from a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:USERS_TAGGED_IN_JOB

query Parameters
maintenanceJobs_id
required
number

Maintenance Job ID

users_userid
required
number

User ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Delete Job

Delete a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:DELETE

query Parameters
maintenanceJobs_id
required
number

Maintenance Job ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

manufacturers

Asset Manufacturers

New Manufacturer

Create a new manufacturer
Requires Instance Permission ASSETS:MANUFACTURERS:CREATE

query Parameters
manufacturers_name
required
string

Manufacturer Name

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Search Manufacturers

Search for a manufacturer

query Parameters
term
required
string

Search Term

instance_id
required
number

Instance ID

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

barcodes

Asset Barcodes

Search by Barcode

A simpler barcode search

query Parameters
term
required
string

the barcode/tag to search for

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Assign Barcode

Assign a barcode to an asset
Requires Instance Permission ASSETS:ASSET_BARCODES:EDIT:ASSOCIATE_UNNASOCIATED_BARCODES_WITH_ASSETS

query Parameters
id
required
string

The id of the Asset to assign a barcode to

barcodeid
required
undefined

An ID of an existing barcode or false

text
required
string

the value of a new barcode

type
required
string

The Barcode type

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Delete Barcode

Delete a barcode
Requires Instance Permission ASSETS:ASSET_BARCODES:DELETE

query Parameters
barcodes_id
required
integer

the ID to remove

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Barcode Asset Search

Search for an Asset using a barcode

query Parameters
text
required
string

The barcode value

type
required
string

The barcode type

locationType
string

What the location is - should be 'barcode', 'asset' or 'Custom'

location
string

a locationBarcodeId, assetBarcodeId or custom string

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Generate Barcode Image

Generate an SVG image of a given barcode value

query Parameters
type
required
string

The Barcode type

barcode
required
string

Value of the Barcode

size
required
number

Size of returned barcode

width
required
number

Width of the returned barcode

Responses

categories

Asset Categories

Create Asset Category

Create a category

query Parameters
required
object

The category data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Edit Asset Category Group

Edit an Asset Category Group (Parent)

query Parameters
required
object

The category group data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Search Asset Categories

Search for categories

query Parameters
term
required
string

The search term

instance_id
required
integer

the InstanceID

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

projects

Project Management

New

Create a new project
Requires Instance Permission PROJECTS:CREATE

query Parameters
projects_name
required
string

Project Name

projects_manager
required
number

Project Manager User ID

projectsType_id
required
number

Project Type ID

projects_parent_project_id
required
number

Parent Project ID

projects_dates_use_start
required
number

Project Start date/time, both this and projects_dates_use_end required to set this property

projects_dates_use_end
required
number

Project End date/time, both this and projects_dates_use_start required to set this property

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Name

Change the name of a project
Requires Instance Permission PROJECTS:EDIT:NAME

query Parameters
projects_id
required
number

Project ID

projects_name
required
string

Project Name

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Description

Change the description of a project
Requires Instance Permission PROJECTS:EDIT:DESCRIPTION_AND_SUB_PROJECTS

query Parameters
projects_id
required
number

Project ID

projects_description
required
string

Project Description

Responses

Response samples

Content type
application/json
{
  • "result": true
}

New Payment

Create a new project payment
Requires Instance Permission PROJECTS:PROJECT_PAYMENTS:CREATE

query Parameters
required
object

Form Data

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Get Comments

Get the comments of a project
Requires Instance Permission PROJECTS:VIEW

query Parameters
projects_id
required
number

Project ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Status

Change the status of a project
Requires Instance Permission PROJECTS:EDIT:STATUS

query Parameters
projects_id
required
number

Project ID

projects_status
required
number

Project Status

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Unarchive

Unarchive a project
Requires Instance Permission PROJECTS:ARCHIVE

query Parameters
projects_id
required
number

Project ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Project Dates

Change the start and end dates of a project
Requires Instance Permission PROJECTS:EDIT:DATES

query Parameters
projects_id
required
number

Project ID

projects_dates_use_start
required
string

Start Date/Time

projects_dates_use_end
required
string

End Date/Time

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Project Manager

Change the project manager of a project
Requires Instance Permission PROJECTS:EDIT:LEAD

query Parameters
projects_id
required
number

Project ID

users_userid
required
number

User ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Venue

Change the venue of a project
Requires Instance Permission PROJECTS:EDIT:ADDRESS

query Parameters
projects_id
required
number

Project ID

locations_id
required
number

Location ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Edit Note

Edit a project note
Requires Instance Permission PROJECTS:PROJECT_NOTES:EDIT:NOTES

query Parameters
projects_id
required
number

Project ID

projectsNotes_id
required
number

Project Note Id

projectsNotes_text
required
string

Project Note Text

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Follow Parent Status

Change whether a project follows the status of its parent project
Requires Instance Permission PROJECTS:CREATE

query Parameters
projects_id
required
number

Project ID

follow
required
boolean

Follow Parent Status

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Project Type

Change the project type of a project
Requires Instance Permission PROJECTS:EDIT:PROJECT_TYPE

query Parameters
projects_id
required
number

Project ID

projectsTypes_id
required
number

Project Type id

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Archive Project

Archive a project
Requires Instance Permission PROJECTS:ARCHIVE

query Parameters
projects_id
required
number

Project ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

New Note

Create a new project note
Requires Instance Permission PROJECTS:PROJECT_NOTES:CREATE:NOTES

query Parameters
projects_id
required
number

Project ID

projectsNotes_title
required
string

Project Note Text

Responses

Response samples

Content type
application/json
{
  • "result": true
}

New Quick Comment

Create a new project quick comment
Requires Instance Permission PROJECTS:VIEW

query Parameters
projects_id
required
number

Project ID

text
required
string

Comment Text

Responses

Response samples

Content type
application/json
{
  • "result": true
}

List

Get a list of projects
Requires Instance Permission PROJECTS:VIEW

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Sub Project

Change the parent project of a project
Requires Instance Permission PROJECTS:CREATE

query Parameters
projects_id
required
number

Project ID

projects_parent_project_id
required
number

Parent Project ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Delete

Delete a project
Requires Instance Permission PROJECTS:DELETE

query Parameters
projects_id
required
number

Project ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Client

Change the client of a project
Requires Instance Permission PROJECTS:EDIT:CLIENT

query Parameters
projects_id
required
number

Project ID

clients_id
required
number

Client ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Invoice Notes

Change the invoice notes of a project
Requires Instance Permission PROJECTS:EDIT:INVOICE_NOTES

query Parameters
projects_id
required
number

Project ID

projects_invoiceNotes
required
string

Invoice Notes

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Project Number of Days & Weeks for Finance

Change the number of days and weeks for a project
Requires Instance Permission PROJECTS:EDIT:DATES

query Parameters
projects_id
required
number

Project ID

projects_dates_finances_days
required
string

Number of days (set both this and weeks to -1 to remove custom)

projects_dates_finances_weeks
required
string

Number of weeks (set both this and weeks to -1 to remove custom)

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Delete Payment

Delete a payment
Requires Instance Permission PROJECTS:PROJECT_PAYMENTS:DELETE

query Parameters
payments_id
required
number

Payment ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Change Project Deliver Dates

Change the start and end deliver dates of a project
Requires Instance Permission PROJECTS:EDIT:DATES

query Parameters
projects_id
required
number

Project ID

projects_dates_deliver_start
required
string

Start Date/Time

projects_dates_deliver_end
required
string

End Date/Time

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Data

Get the data of a project
Requires Instance Permission PROJECTS:VIEW

query Parameters
formData
required
object

Form Data

id
required
number

Project ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

crew

Project Crew Management

Assign Crew

Assign crew to a project
Requires Instance Permission PROJECTS:PROJECT_CREW:CREATE

query Parameters
required
object

Form Data

users
required
Array of arrays

Users

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Sort Crew

Sort the crew of a project
Requires Instance Permission PROJECTS:PROJECT_CREW:EDIT:CREW_RANKS

query Parameters
projects_id
required
number

Project ID

order
required
Array of arrays

Order

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Unassign Crew

Unassign crew from a project
Requires Instance Permission PROJECTS:PROJECT_CREW:EDIT

query Parameters
crewAssignments_id
required
number

Crew Assignment ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Search Users

Search for users to assign to a project
Requires Instance Permission PROJECTS:PROJECT_CREW:CREATE

query Parameters
term
required
string

Search Term

projects_id
required
number

Project ID

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Edit Crew Assignment

Edit a crew assignment
Requires Instance Permission PROJECTS:PROJECT_CREW:EDIT

query Parameters
crewAssignments_id
required
number

Crew Assignment ID

crewAssignments_role
required
string

Crew Assignment Role

Responses

Response samples

Content type
application/json
{
  • "result": true
}

recruitment

Project Crew Recruitment

Accept Vacant Role Application

Accept a vacant role application
Requires Instance Permission PROJECTS:PROJECT_CREW:VIEW:VIEW_AND_APPLY_FOR_CREW_ROLES

query Parameters
projectsVacantRolesApplications_id
required
number

Vacant Role Application ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Reject Vacant Role Application

Reject a vacant role application
Requires Instance Permission PROJECTS:PROJECT_CREW:VIEW:VIEW_AND_APPLY_FOR_CREW_ROLES

query Parameters
projectsVacantRolesApplications_id
required
number

Vacant Role Application ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Get Vacant Role List

Get the list of vacant roles for a project
Requires Instance Permission PROJECTS:PROJECT_CREW:VIEW:VIEW_AND_APPLY_FOR_CREW_ROLES

query Parameters
projects_id
required
number

Project ID

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Get Vacant Role Application List

Get the list of applications for a vacant role
Requires Instance Permission PROJECTS:PROJECT_CREW:EDIT:CREW_RECRUITMENT

query Parameters
projectsVacantRoles_id
required
number

Vacant Role ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Edit Vacant Role

Edit a vacant role
Requires Instance Permission PROJECTS:PROJECT_CREW:EDIT:CREW_RECRUITMENT

query Parameters
required
object

Form Data

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Apply for Vacant Role

Apply for a vacant role
Requires Instance Permission PROJECTS:PROJECT_CREW:VIEW:VIEW_AND_APPLY_FOR_CREW_ROLES

query Parameters
required
object

Form Data

Responses

Response samples

Content type
application/json
{
  • "result": true
}

project_assets

Project Asset Management

Set Asset Status by Tag

Set asset status for a project by the asset's tag

query Parameters
text
required
string

Value of the asset tag

assetsAssignments_status
required
number

Status Id to set asset to

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Get Asset Assignment Status List

Get the list of statuses for an asset assignment
Requires Instance Permission PROJECTS:VIEW

query Parameters
projects_id
required
number

Project ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Set Asset Assignment Status

Set the status for an asset assignment
Requires Instance Permission PROJECTS:PROJECT_ASSETS:EDIT:ASSIGNMENT_STATUS

query Parameters
assetsAssignments_status
required
number

Status

assetsAssignments_id
required
number

Asset Assignment ID

projects_id
required
number

Project ID

status_is_order
required
boolean

Whether the status is an ordering rather than a status

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Set Asset Assignment Price

Set the price for an asset assignment
Requires Instance Permission PROJECTS:PROJECT_ASSETS:EDIT:CUSTOM_PRICE

query Parameters
assetsAssignments
required
Array of arrays

Asset Assignment IDs

assetsAssignments_customPrice
required
number

Price

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Assign Asset to Project

Assign an asset to a project
Requires Instance Permission PROJECTS:PROJECT_ASSETS:CREATE:ASSIGN_AND_UNASSIGN

query Parameters
projects_id
required
number

Project ID

assetGroups_id
required
number

Asset Group ID

assets_id
required
number

Asset ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Set Asset Assignment Comment

Set the comment for an asset assignment
Requires Instance Permission PROJECTS:PROJECT_ASSETS:EDIT:ASSIGNMNET_COMMENT

query Parameters
assetsAssignments
required
Array of arrays

Asset Assignment IDs

assetsAssignments_comment
required
string

Comment

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Set Asset Assignment Status using Barcode

Set the status for an asset assignment using a barcode
Requires Instance Permission PROJECTS:PROJECT_ASSETS:EDIT:ASSIGNMENT_STATUS

query Parameters
text
required
string

barcode value

type
required
string

barcode type

locationType
required
enum

location type

projects_id
required
number

Project ID

assetsAssignments_status
required
number

Status ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Unassign Asset

Unassign an asset from a project
Requires Instance Permission PROJECTS:PROJECT_ASSETS:CREATE:ASSIGN_AND_UNASSIGN

query Parameters
assetsAssignments
required
Array of arrays

Asset Assignment IDs

assets_id
required
number

Asset ID

projects_id
required
number

Project ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Swap Asset Assignment

Swap an asset in a project
Requires Instance Permission PROJECTS:PROJECT_ASSETS:CREATE:ASSIGN_AND_UNASSIGN

query Parameters
assetsAssignments_id
required
number

Asset Assignment ID

assets_id
required
number

Project ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Set Asset Assignment Discount

Set the discount for an asset assignment
Requires Instance Permission PROJECTS:PROJECT_ASSETS:EDIT:DISCOUNT

query Parameters
assetsAssignments
required
Array of arrays

Asset Assignment IDs

assetsAssignments_discount
required
number

Discount amount

Responses

Response samples

Content type
application/json
{
  • "result": true
}

instances

Instance Management

Join Instance using Trusted Domain

Add a user to an instance from a trusted domain

query Parameters
instances_id
required
number

The instance id

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Create Instance

Create a new instance
Requires server permission INSTANCES:CREATE or NEW_INSTANCE_ENABLED to be set to enabled in the server config

query Parameters
instances_name
required
string

The instance name

instances_website
required
string

The instance website

instances_email
required
string

The instance email

instances_phone
required
string

The instance phone number

role
required
number

The user's role id

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "instanceid": 0
}

Remove User

Remove a user from an instance
Requires Instance Permission BUSINESS:USERS:DELETE:REMOVE_FORM_BUSINESS

query Parameters
userid
required
number

The user id

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Edit User

Edit a user's role
Requires Instance Permission BUSINESS:USERS:EDIT:CHANGE_ROLE

query Parameters
userinstanceid
required
number

The userinstance id

position
required
number

The user's position id

label
required
string

The user's role label

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Archive User

Archive a user from an instance
Requires Instance Permission BUSINESS:USERS:EDIT:ARCHIVE

query Parameters
users_id
required
number

The user id

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

List Users

query Parameters
q
required
string

Search by users' names, usernames, or emails

page
required
number

Paginate the results, starting from 1.

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Restore Instance

Restore soft-deleted Instance Requires Server permission INSTANCES:DELETE

query Parameters
instances_id
required
number

Id of instance to restore

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Edit Instance Server Config

Edit an instance as a server administrator. This is typically used for the instance plan, but you can pass any valid parameter from the database of the instance.

query Parameters
required
object

The instance data to manipulate

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Add User to Instance

Add a user to an instance
Requires Instance Permission BUSINESS:USERS:CREATE:ADD_USER_BY_EMAIL

query Parameters
rolegroup
required
number

The instance position id

rolename
required
string

The role name

users
required
Array of arrays

The user ids

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Switch Instance

Switch the active instance for the user

query Parameters
instanceid
required
number

The instance id

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Edit Instance Trusted Domains

Edit an instance's trusted domains
Requires Instance Permission BUSINESS:BUSINESS_SETTINGS:EDIT

query Parameters
formData
required
object

The instance data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Join Instance using Signup Code

Add a user to an instance from a signup code

query Parameters
signupCodes_name
required
string

The signup code

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

List User Instances

List all instances a user is a member of

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Edit Instance Public Data

Edit an instance's public data
Requires Instance Permission BUSINESS:BUSINESS_SETTINGS:EDIT

query Parameters
formData
required
object

The instance data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Edit Instance

Edit an instance
Requires Instance Permission BUSINESS:BUSINESS_SETTINGS:EDIT

query Parameters
required
object

The instance data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Search Users

Search for users in an instance
Requires Instance Permission BUSINESS:USERS:CREATE:ADD_USER_BY_EMAIL

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

locations

Business Locations

New Location

Create a new location
Requires Instance Permission LOCATION:CREATE

query Parameters
required
object

The location data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

UnArchive Location

Restore a location Requires Instance permission LOCATIONS:EDIT

query Parameters
locations_id
required
number

Id of location to restore

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Archives Location

Archives a location Requires Instance permission LOCATIONS:EDIT

query Parameters
locations_id
required
number

Id of location to archive

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Edit Location

Edit a location
Requires Instance Permission LOCATIONS:EDIT

query Parameters
required
object

The location data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

clients

Client Management

Create Client

Create a client
Requires Instance Permission CLIENTS:CREATE

query Parameters
clients_name
required
string

The name of the client

Responses

Response samples

Content type
application/json
{
  • "result": true
}

UnArchive Client

Unarchive (Restore) a client Requires Instance Permission CLIENTS:EDIT

query Parameters
clients_id
required
number

Id of the client to unarchive

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Archive Client

Archive (Soft Delete) a client Requires Instance Permission CLIENTS:EDIT

query Parameters
clients_id
required
number

Id of the client to archive

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Edit Client

Edit a client
Requires Instance Permission CLIENTS:EDIT

query Parameters
required
object

The client data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

training

Training

Certify

Certify a user for a module
Requires instance permission TRAINING:EDIT:CERTIFY_USER

query Parameters
userid
required
number

User ID

modules_id
required
number

Module ID

comment
required
string

Comment

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Revoke All

Revoke all certifications for a user
Requires instance permission TRAINING:EDIT:REVOKE_USER_CERTIFICATION

query Parameters
userid
required
number

User ID

modules_id
required
number

Module ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Complete Step

Complete a training step

query Parameters
id
required
number

Step ID

Responses

Response samples

Content type
application/json
{
  • "result": true
}

modules

Training Modules

New Module

Create a new module
Requires Instance Permission TRAINING:CREATE

query Parameters
required
object

undefined

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Edit Module

Edit a module
Requires Instance Permission TRAINING:EDIT

query Parameters
required
object

undefined

Responses

Response samples

Content type
application/json
{
  • "result": true
}

module_steps

Module Steps

New Step

Create a new module step
Requires Instance Permission TRAINING:EDIT

query Parameters
required
object

Form Data

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Sort Steps

Sort the steps of a module
Requires Instance Permission TRAINING:EDIT

query Parameters
order
required
Array of arrays

Order

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Edit Step

Edit a module step
Requires Instance Permission TRAINING:EDIT

query Parameters
required
object

Form Data

Responses

Response samples

Content type
application/json
{
  • "result": true
}

cms

CMS Page Management

Edit CMS Page Rank

Edit a page rank
Requires Instance Permission CMS:CMS_PAGES:EDIT

query Parameters
order
required
Array of arrays

The page rank data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Set Custom Dashboard

Set a custom dashboard
Requires Instance Permission CMS:CMS_PAGES:EDIT:CUSTOM_DASHBOARDS

query Parameters
instancePositions_id
required
number

instance position for the dashboard

cmsPages_id
required
number

The page id

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

List CMS Pages

List all pages

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Edit CMS Page Config

Edit a page config
Requires Instance Permission CMS:CMS_PAGES:EDIT

query Parameters
formData
required
object

The page config data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Edit CMS Page Content

Edit a page content
Requires Instance Permission CMS:CMS_PAGES:EDIT

query Parameters
cmsPages_id
required
integer

The ID of the page

pageData
required
string

The page data

changelog
required
string

The description of the change

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Get CMS Page

Get a page

query Parameters
p
required
integer

The page id

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Rollback CMS Page Content

Rollback a page content
Requires Instance Permission CMS:CMS_PAGES:EDIT

query Parameters
cmsPages_id
required
integer

The ID of the page

change
required
string

The description of the change

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

file_uploads

Handles interaction with s3 Buckets

Share file

Make a file publicly accessible, by generating a share key

query Parameters
s3files_id
required
number

Id of the file to share

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Remove File Share

Remove a file share
Requires Instance Permission FILES:FILE_ATTACHMENTS:EDIT:SHARING_SETTINGS

query Parameters
s3files_id
required
integer

The file id

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Delete File

Delete a file
Requires Instance Permission ASSETS:FILE_ATTACHMENTS:DELETE

query Parameters
s3files_id
required
integer

The file id

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Rename File

Rename a file
Requires Instance Permission ASSETS:FILE_ATTACHMENTS:EDIT

query Parameters
s3files_id
required
integer

The file id

s3files_name
required
string

The new file name

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Get File

Get a file

query Parameters
f
required
integer

The file id

d
required
boolean

should a download be forced or should it be displayed in the browser? (if set it will download)

r
required
boolean

should the url be returned by the script as plain text or a redirect triggered? (if set it will redirect)

e
required
boolean

when should the link expire? Must be a string describing how long in words basically. If this file type has security features then it will default to 1 minute.

Responses

Response samples

Content type
application/json
{
  • "result": true
}

notifications

v1 notification endpoints - These endpoints are not accessible from the web, and are instead used internally.

Notify function

This function is called by the notify function in the client-side code.
It returns a function to call rather than a response.

Email Notifications

Send an email to the user. This returns a function to call rather than a response.

assetAssignmentStatus

Asset Assignment Statuses

Create Asset Assignment Status

Create an asset assignment status
Requires Instance Permission BUSINESS:BUSINESS_SETTINGS:EDIT

query Parameters
statusName
required
string

The status name

statusOrder
required
integer

The status order

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Reorder Asset Assignment Status

Reorder asset assignment statuses
Requires Instance Permission BUSINESS:BUSINESS_SETTINGS:EDIT

query Parameters
order
required
Array of arrays

The order of the statuses

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Delete Asset Assignment Status

Delete an asset assignment status
Requires Instance Permission BUSINESS:BUSINESS_SETTINGS:EDIT

query Parameters
statusId
required
integer

The status id

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Edit Asset Assignment Status

Edit an asset assignment status
Requires Instance Permission BUSINESS:BUSINESS_SETTINGS:EDIT

query Parameters
statusId
required
integer

The status id

statusName
required
string

The status name

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

projectTypes

Project Types

Create Project Type

Create a project type
Requires Instance Permission PROJECTS:PROJECT_TYPES:CREATE

query Parameters
required
object

The project type data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Edit Project Type

Edit a project type
Requires Instance Permission PROJECTS:PROJECT_TYPES:EDIT

query Parameters
required
object

The project type data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

projectStatus

Project Statuses

Create Project Status

Create new Project Status

query Parameters
formData
required
object

Project Status Data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Edit Project Status Order

Edit status flow order

query Parameters
order
required
Array of arrays

Array of Project Statuses

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Edit Project Status

Edit Project Status details

query Parameters
formData
required
object

Project Status Data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

signupCodes

Signup Codes

Create Signup Code

Create a signup code
Requires Instance Permission BUSINESS:USER_SIGNUP_CODES:CREATE

query Parameters
required
object

The signup code data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

Check if Signup Code is Taken

Check if a signup code is taken
Requires Instance Permission BUSINESS:USER_SIGNUP_CODES:VIEW

query Parameters
signupCode
required
string

The signup code

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": true
}

Edit Signup Code

Edit a signup code
Requires Instance Permission BUSINESS:USER_SIGNUP_CODES:EDIT

query Parameters
required
object

The signup code data

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "response": [ ]
}

s3files

S3 File Management

Upload Success

Upload a file to S3

query Parameters
name
required
string

File Name

size
required
number

File Size

typeid
required
number

File Type ID

subtype
required
number

File Subtype

orignalName
required
string

Original File Name

public
required
boolean

Public File

Responses

Response samples

Content type
application/json
{
  • "result": true
}

App Uploader

Upload a file to S3

query Parameters
filename
required
string

File Name

typename
required
string

File Type

typeid
required
number

File Type ID

subtype
required
number

File Subtype

public
required
boolean

Public File

Responses

Upload Project Invoice

Upload a project invoice
Requires Instance Permission PROJECTS:VIEW

query Parameters
id
required
number

Project ID

quote
required
boolean

Is Quote?

fileNumber
required
number

File Version Number

Responses

Response samples

Content type
application/json
{
  • "result": true
}

Generate Signature Uppy

Generate a signature for uploading a file to S3

query Parameters
filename
required
string

File Name

contentType
required
string

Content Type

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "method": "string",
  • "url": "string"
}

search

Global Search

Global Search

Search for a term across the whole RMS

query Parameters
term
required
string

Search Term

offset
required
number

Offset

limit
required
number

Limit

Responses

Response samples

Content type
application/json
{
  • "result": true
}

icons

Internal Icon Library

List Icons

Get a list of the first 20 available icons

query Parameters
search
required
string

Icon search term

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Bulk Asset Import

Bulk import assets, using templated csv

query Parameters
instances_id
required
number

Instance Id to import assets to

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

instanceCalendarSettings

Edit Calendar Settings

Edit Settings related to calendars, including formatting and filters

query Parameters
formData
required
object

Calendar Options

Responses

Response samples

Content type
application/json
{
  • "result": true,
  • "error": [ ]
}

Export instance Calendar

Get a list of the first 20 available icons

query Parameters
id
required
number

Id of Instance to get calendar

key
required
number

Identifying Hash for this calendar

Responses