MRI Software · Schema
ContractorMovementRequest
Real EstateProperty ManagementInvestment ManagementLease AccountingFacilities ManagementCommercial Real EstateVisitor ManagementPropTech
Properties
| Name | Type | Description |
|---|---|---|
| onsite_status | string | Describes whether the movement is 'onsite' or 'offsite', if set to onsite the 'scanned_out' field is unset |
| location_id | integer | |
| sp_member_id | integer | |
| sp_org_id | integer | |
| print_kiosk_id | integer | ID of the kiosk which has shared badge pass printing enabled. Not mandatory. |
| lacp_id | integer | Location access point ID. Not mandatory. |
| zone_id | integer | ID of the zone being signed into. Not mandatory. |
| zone_other | string | Zone note for this movement. Not mandatory |
| scanned_in | string | Scanned in note. Only set when onsite_status = 'onsite'. Not mandatory. |
| scanned_out | string | Scanned out note. Only set when onsite_status = 'offsite', gets unset when onsite_status = 'onsite'. Not mandatory. |
| visiting_staff_id | integer | ID of staff member being visited. Not mandatory. |
| cardnumber | string | Sign in card number. Not mandatory. |
| carpark_question | boolean | Can be set as either 1/0 or true/false. Not mandatory. |
| carpark_registration | string | Vehicle registration. Not mandatory. |
| carpark_number | string | Carpark number. Not mandatory. |
| pass | integer | Not mandatory |
| other_pass | string | Any other pass that might need to be submitted. Not mandatory. |
| sp_purpose | string | Reason for contractor visit. Not mandatory. |
| assistance | boolean | Whether or not a contractor requires assistance. Not mandatory. |
| expected | integer | Expected time on-site. Not mandatory |
| loneworker | object | Describes whether or not the contractor is working alone. Not mandatory. |
| so_staff_id | integer | Staff safety officer ID. Not mandatory |
| so_spm_id | integer | Contractor manager safety officer ID. Not mandatory |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/mri-software/main/json-schema/mri-software-contractor-movement-request-schema.json",
"title": "ContractorMovementRequest",
"x-generated": "2026-10-20",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/mri-software-onlocation-openapi.yml#/components/schemas/ContractorMovementRequest",
"required": [
"sp_member_id",
"location_id",
"sp_org_id",
"onsite_status"
],
"properties": {
"onsite_status": {
"description": "Describes whether the movement is 'onsite' or 'offsite', if set to onsite the 'scanned_out' field is unset",
"type": "string",
"format": "string"
},
"location_id": {
"type": "integer",
"format": "int32"
},
"sp_member_id": {
"type": "integer",
"format": "int32"
},
"sp_org_id": {
"type": "integer",
"format": "int32"
},
"print_kiosk_id": {
"description": "ID of the kiosk which has shared badge pass printing enabled. Not mandatory.",
"type": "integer",
"format": "int32"
},
"lacp_id": {
"description": "Location access point ID. Not mandatory.",
"type": "integer",
"format": "int32"
},
"zone_id": {
"description": "ID of the zone being signed into. Not mandatory.",
"type": "integer",
"format": "int32"
},
"zone_other": {
"description": "Zone note for this movement. Not mandatory",
"type": "string",
"format": "string"
},
"scanned_in": {
"description": "Scanned in note. Only set when onsite_status = 'onsite'. Not mandatory.",
"type": "string",
"format": "string"
},
"scanned_out": {
"description": "Scanned out note. Only set when onsite_status = 'offsite', gets unset when onsite_status = 'onsite'. Not mandatory.",
"type": "string",
"format": "string"
},
"visiting_staff_id": {
"description": "ID of staff member being visited. Not mandatory.",
"type": "integer",
"format": "int32"
},
"cardnumber": {
"description": "Sign in card number. Not mandatory.",
"type": "string",
"format": "string"
},
"carpark_question": {
"description": "Can be set as either 1/0 or true/false. Not mandatory.",
"type": "boolean",
"format": "boolean"
},
"carpark_registration": {
"description": "Vehicle registration. Not mandatory.",
"type": "string",
"format": "string"
},
"carpark_number": {
"description": "Carpark number. Not mandatory.",
"type": "string",
"format": "string"
},
"pass": {
"description": "Not mandatory",
"type": "integer",
"format": "int32"
},
"other_pass": {
"description": "Any other pass that might need to be submitted. Not mandatory.",
"type": "string",
"format": "string"
},
"sp_purpose": {
"description": "Reason for contractor visit. Not mandatory.",
"type": "string",
"format": "string"
},
"assistance": {
"description": "Whether or not a contractor requires assistance. Not mandatory.",
"type": "boolean",
"format": "boolean"
},
"expected": {
"description": "Expected time on-site. Not mandatory",
"type": "integer",
"format": "int32"
},
"loneworker": {
"description": "Describes whether or not the contractor is working alone. Not mandatory.",
"format": "boolean"
},
"so_staff_id": {
"description": "Staff safety officer ID. Not mandatory",
"type": "integer",
"format": "int32"
},
"so_spm_id": {
"description": "Contractor manager safety officer ID. Not mandatory",
"type": "integer",
"format": "int32"
}
},
"type": "object"
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/mri-software-contractor-movement-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.