Download OpenAPI specification:
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.
Manage user pemissions Requires server permission PERMISSIONS:EDIT:USER_POSITION
| action required | string DELETE, EDIT or new |
| users_userid required | string undefined |
| userPositions_id required | string undefined |
{- "result": true,
- "error": [ ]
}Gets data for an asset type
| term required | integer The ID of the asset type to get data for |
{- "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
}Creates an asset from an asset type Requires Instance Permission 17 ASSETS:CREATE
required | object The data to create the asset from |
{- "result": true,
- "assets_id": 0,
- "assets_tag": "string",
- "assetTypes_id": 0
}Archives an asset
Requires Instance Permission ASSETS:ARCHIVE
| 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 |
{- "result": true,
- "error": [ ]
}Edits an asset type's definable fields
Requires Instance Permission ASSETS:ASSET_TYPES:EDIT
required | object The data to update the asset type's definable fields with |
{- "result": true,
- "message": null
}Lists assets
| 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 |
{- "result": true,
- "assets": [ ],
- "pagination": 0
}Add an asset to a group
Requires Instance Permission ASSETS:ASSET_GROUPS:EDIT:ASSETS_WITHIN_GROUP
| assetGroups_id required | integer The group id |
| assets_id required | integer The asset id |
{- "result": true,
- "response": [ ]
}Remove an asset from a group
Requires Instance Permission ASSETS:ASSET_GROUPS:EDIT:ASSETS_WITHIN_GROUP
| assetGroups_id required | integer The group id |
| assets_id required | integer The asset id |
{- "result": true,
- "response": [ ]
}Change the flag of a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:ASSET_FLAGS
| maintenanceJobs_id required | number Maintenance Job ID |
| maintenanceJobs_flagAssets required | boolean Whether to flag maintenance job |
{- "result": true
}Add an asset to a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:ADD_ASSETS
| maintenanceJobs_id required | number Maintenance Job ID |
| maintenanceJobs_assets required | Array of arrays Maintenance Job Assets |
{- "result": true
}Change the status of a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:STATUS
| maintenanceJobs_id required | number Maintenance Job ID |
| maintenanceJobsStatuses_id required | number Maintenance Job Status id |
{- "result": true
}Change the block status of a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:ASSET_BLOCKS
| maintenanceJobs_id required | number Maintenance Job ID |
| maintenanceJobs_blockAssets required | boolean Maintenance Job Block |
{- "result": true
}Untag a user from a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:USERS_TAGGED_IN_JOB
| maintenanceJobs_id required | number Maintenance Job ID |
| users_userid required | number User ID |
{- "result": true
}Send a message to a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:ADD_MESSAGE_TO_JOB
| maintenanceJobs_id required | number Maintenance Job ID |
| maintenanceJobsMessages_text required | string Message |
{- "result": true
}Change the priority of a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:JOB_PRIORITY
| maintenanceJobs_id required | number Maintenance Job ID |
| maintenanceJobs_priority required | number Maintenance Job Priority |
{- "result": true
}Change the due date of a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:JOB_DUE_DATE
| maintenanceJobs_id required | number Maintenance Job ID |
| maintenanceJobs_timestamp_due required | string Maintenance Job Due Date |
{- "result": true
}Change who a maintenance job is assigned to
Requires Instance Permission MAINTENANCE_JOBS:EDIT:USER_ASSIGNED_TO_JOB
| maintenanceJobs_id required | number Maintenance Job ID |
| users_userid required | number Who the maintenance job is assigned to |
{- "result": true
}Change the name of a maintenance job
Requires Instance Permission MAINTENANCE_JOBS:EDIT:NAME
| maintenanceJobs_id required | number Maintenance Job ID |
| maintenanceJobs_title required | string Maintenance Job Name |
{- "result": true
}Assign a barcode to an asset
Requires Instance Permission ASSETS:ASSET_BARCODES:EDIT:ASSOCIATE_UNNASOCIATED_BARCODES_WITH_ASSETS
| 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 |
{- "result": true,
- "error": [ ]
}Search for an Asset using a barcode
| 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 |
{- "result": true,
- "error": [ ]
}Change whether a project follows the status of its parent project
Requires Instance Permission PROJECTS:CREATE
| projects_id required | number Project ID |
| follow required | boolean Follow Parent Status |
{- "result": true
}Create a new project
Requires Instance Permission PROJECTS:CREATE
| 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 |
{- "result": true
}Edit a project note
Requires Instance Permission PROJECTS:PROJECT_NOTES:EDIT:NOTES
| projects_id required | number Project ID |
| projectsNotes_id required | number Project Note Id |
| projectsNotes_text required | string Project Note Text |
{- "result": true
}Change the start and end deliver dates of a project
Requires Instance Permission PROJECTS:EDIT:DATES
| projects_id required | number Project ID |
| projects_dates_deliver_start required | string Start Date/Time |
| projects_dates_deliver_end required | string End Date/Time |
{- "result": true
}Change the start and end dates of a project
Requires Instance Permission PROJECTS:EDIT:DATES
| projects_id required | number Project ID |
| projects_dates_use_start required | string Start Date/Time |
| projects_dates_use_end required | string End Date/Time |
{- "result": true
}Change the description of a project
Requires Instance Permission PROJECTS:EDIT:DESCRIPTION_AND_SUB_PROJECTS
| projects_id required | number Project ID |
| projects_description required | string Project Description |
{- "result": true
}Change the number of days and weeks for a project
Requires Instance Permission PROJECTS:EDIT:DATES
| 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) |
{- "result": true
}Reject a vacant role application
Requires Instance Permission PROJECTS:PROJECT_CREW:VIEW:VIEW_AND_APPLY_FOR_CREW_ROLES
| projectsVacantRolesApplications_id required | number Vacant Role Application ID |
{- "result": true
}Accept a vacant role application
Requires Instance Permission PROJECTS:PROJECT_CREW:VIEW:VIEW_AND_APPLY_FOR_CREW_ROLES
| projectsVacantRolesApplications_id required | number Vacant Role Application ID |
{- "result": true
}Set the comment for an asset assignment
Requires Instance Permission PROJECTS:PROJECT_ASSETS:EDIT:ASSIGNMNET_COMMENT
| assetsAssignments required | Array of arrays Asset Assignment IDs |
| assetsAssignments_comment required | string Comment |
{- "result": true
}Set the price for an asset assignment
Requires Instance Permission PROJECTS:PROJECT_ASSETS:EDIT:CUSTOM_PRICE
| assetsAssignments required | Array of arrays Asset Assignment IDs |
| assetsAssignments_customPrice required | number Price |
{- "result": true
}Set the status for an asset assignment
Requires Instance Permission PROJECTS:PROJECT_ASSETS:EDIT:ASSIGNMENT_STATUS
| 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 |
{- "result": true
}Set the discount for an asset assignment
Requires Instance Permission PROJECTS:PROJECT_ASSETS:EDIT:DISCOUNT
| assetsAssignments required | Array of arrays Asset Assignment IDs |
| assetsAssignments_discount required | number Discount amount |
{- "result": true
}Set the status for an asset assignment using a barcode
Requires Instance Permission PROJECTS:PROJECT_ASSETS:EDIT:ASSIGNMENT_STATUS
| 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 |
{- "result": true
}Unassign an asset from a project
Requires Instance Permission PROJECTS:PROJECT_ASSETS:CREATE:ASSIGN_AND_UNASSIGN
| assetsAssignments required | Array of arrays Asset Assignment IDs |
| assets_id required | number Asset ID |
| projects_id required | number Project ID |
{- "result": true
}Swap an asset in a project
Requires Instance Permission PROJECTS:PROJECT_ASSETS:CREATE:ASSIGN_AND_UNASSIGN
| assetsAssignments_id required | number Asset Assignment ID |
| assets_id required | number Project ID |
{- "result": true
}Assign an asset to a project
Requires Instance Permission PROJECTS:PROJECT_ASSETS:CREATE:ASSIGN_AND_UNASSIGN
| projects_id required | number Project ID |
| assetGroups_id required | number Asset Group ID |
| assets_id required | number Asset ID |
{- "result": true
}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.
required | object The instance data to manipulate |
{- "result": true,
- "response": [ ]
}Edit a user's role
Requires Instance Permission BUSINESS:USERS:EDIT:CHANGE_ROLE
| userinstanceid required | number The userinstance id |
| position required | number The user's position id |
| label required | string The user's role label |
{- "result": true,
- "response": [ ]
}Create a new instance
Requires server permission INSTANCES:CREATE or NEW_INSTANCE_ENABLED to be set to enabled in the server config
| 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 |
{- "result": true,
- "instanceid": 0
}Add a user to an instance
Requires Instance Permission BUSINESS:USERS:CREATE:ADD_USER_BY_EMAIL
| rolegroup required | number The instance position id |
| rolename required | string The role name |
| users required | Array of arrays The user ids |
{- "result": true,
- "response": [ ]
}Set a custom dashboard
Requires Instance Permission CMS:CMS_PAGES:EDIT:CUSTOM_DASHBOARDS
| instancePositions_id required | number instance position for the dashboard |
| cmsPages_id required | number The page id |
{- "result": true,
- "response": [ ]
}Edit a page content
Requires Instance Permission CMS:CMS_PAGES:EDIT
| cmsPages_id required | integer The ID of the page |
| pageData required | string The page data |
| changelog required | string The description of the change |
{- "result": true
}Rollback a page content
Requires Instance Permission CMS:CMS_PAGES:EDIT
| cmsPages_id required | integer The ID of the page |
| change required | string The description of the change |
{- "result": true,
- "response": [ ]
}Get a file
| 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. |
{- "result": true
}v1 notification endpoints - These endpoints are not accessible from the web, and are instead used internally.
Create an asset assignment status
Requires Instance Permission BUSINESS:BUSINESS_SETTINGS:EDIT
| statusName required | string The status name |
| statusOrder required | integer The status order |
{- "result": true,
- "response": [ ]
}Edit an asset assignment status
Requires Instance Permission BUSINESS:BUSINESS_SETTINGS:EDIT
| statusId required | integer The status id |
| statusName required | string The status name |
{- "result": true,
- "response": [ ]
}Upload a file to S3
| 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 |
{- "result": true
}Upload a project invoice
Requires Instance Permission PROJECTS:VIEW
| id required | number Project ID |
| type required | string What type of file is this - invoice, quote or delivery note? |
| fileNumber required | number File Version Number |
{- "result": true
}