1Password · Schema
DevicePatch
Selected device fields to update. Omitted fields are left unchanged; fields set to null are cleared.
Password ManagerPasswordsSecuritySecretsCanada
Properties
| Name | Type | Description |
|---|---|---|
| status | stringnull | The device's status, e.g. Deployed |
| description | stringnull | A description of the device |
| assignedToEmail | stringnull | Assign the device to a person by email address. Pass null to unassign. |
| locationName | stringnull | Assign the device to a location by name (a location is found or created). Pass null to clear. |
| serialNumber | stringnull | The serial number |
| assetTag | stringnull | The asset tag |
| purchaseDate | stringnull | (ISO format) The purchase date |
| disposalDate | stringnull | (ISO format) The disposal date |
| warrantyExpirationDate | stringnull | (ISO format) The warranty expiration date |
| lifespanExpirationDate | stringnull | (ISO format) The end of the device's useful life |
| enrolledDtm | stringnull | (ISO format) The date the device was enrolled |
| netPrice | numbernull | The net price, in the currency given by netPriceCurrency |
| netPriceCurrency | stringnull | The ISO currency code for netPrice |
| notes | stringnull | Notes about the device |
| isEncrypted | booleannull | Whether the device's storage is encrypted |
| platform | object | The device's operating system platform |
| osVersion | stringnull | The operating system version |
| customFields | objectnull | Custom field values to set, keyed by the field's lookup key |
| deviceName | stringnull | The device name |
| id | stringnull | The device's SaaS Manager ID |
| externalId | stringnull | The device's external ID, sourced from the integration that imported it. |
| hardwareVendor | stringnull | The hardware vendor (manufacturer) |
| modelName | stringnull | The model name |
| assetType | stringnull | The asset type |
| lastSyncDtm | stringnull | The timestamp of the device's last sync from an integration. |
| createdBy | object | The user that created the device record |
| createdDtm | stringnull | The timestamp for when the device record was created |
| lastModifiedBy | object | The user that last modified the device record |
| lastModifiedDtm | stringnull | The timestamp for when the device record was last modified |
| location | object | The device's location. To set the location, use locationName. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/1password/json-schema/1password-device-patch-schema.json",
"title": "DevicePatch",
"description": "Selected device fields to update. Omitted fields are left unchanged; fields set to null are cleared.",
"x-generated": "2026-11-10",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/1password-devices-api-openapi.yml#/components/schemas/DevicePatch",
"type": "object",
"properties": {
"status": {
"type": [
"string",
"null"
],
"description": "The device's status, e.g. Deployed"
},
"description": {
"type": [
"string",
"null"
],
"description": "A description of the device"
},
"assignedToEmail": {
"type": [
"string",
"null"
],
"description": "Assign the device to a person by email address. Pass null to unassign."
},
"locationName": {
"type": [
"string",
"null"
],
"description": "Assign the device to a location by name (a location is found or created). Pass null to clear."
},
"serialNumber": {
"type": [
"string",
"null"
],
"description": "The serial number"
},
"assetTag": {
"type": [
"string",
"null"
],
"description": "The asset tag"
},
"purchaseDate": {
"type": [
"string",
"null"
],
"description": "(ISO format) The purchase date",
"format": "date-time"
},
"disposalDate": {
"type": [
"string",
"null"
],
"description": "(ISO format) The disposal date",
"format": "date-time"
},
"warrantyExpirationDate": {
"type": [
"string",
"null"
],
"description": "(ISO format) The warranty expiration date",
"format": "date-time"
},
"lifespanExpirationDate": {
"type": [
"string",
"null"
],
"description": "(ISO format) The end of the device's useful life",
"format": "date-time"
},
"enrolledDtm": {
"type": [
"string",
"null"
],
"description": "(ISO format) The date the device was enrolled",
"format": "date-time"
},
"netPrice": {
"type": [
"number",
"null"
],
"description": "The net price, in the currency given by netPriceCurrency",
"format": "double"
},
"netPriceCurrency": {
"type": [
"string",
"null"
],
"description": "The ISO currency code for netPrice"
},
"notes": {
"type": [
"string",
"null"
],
"description": "Notes about the device"
},
"isEncrypted": {
"type": [
"boolean",
"null"
],
"description": "Whether the device's storage is encrypted"
},
"platform": {
"allOf": [
{
"$ref": "#/$defs/DevicePlatform"
}
],
"description": "The device's operating system platform"
},
"osVersion": {
"type": [
"string",
"null"
],
"description": "The operating system version"
},
"customFields": {
"type": [
"object",
"null"
],
"additionalProperties": {},
"description": "Custom field values to set, keyed by the field's lookup key"
},
"deviceName": {
"type": [
"string",
"null"
],
"description": "The device name"
},
"id": {
"type": [
"string",
"null"
],
"description": "The device's SaaS Manager ID",
"readOnly": true
},
"externalId": {
"type": [
"string",
"null"
],
"description": "The device's external ID, sourced from the integration that imported it.",
"readOnly": true
},
"hardwareVendor": {
"type": [
"string",
"null"
],
"description": "The hardware vendor (manufacturer)",
"readOnly": true
},
"modelName": {
"type": [
"string",
"null"
],
"description": "The model name",
"readOnly": true
},
"assetType": {
"type": [
"string",
"null"
],
"description": "The asset type",
"readOnly": true
},
"lastSyncDtm": {
"type": [
"string",
"null"
],
"description": "The timestamp of the device's last sync from an integration.",
"format": "date-time",
"readOnly": true
},
"createdBy": {
"allOf": [
{
"$ref": "#/$defs/UserInfo"
}
],
"description": "The user that created the device record",
"readOnly": true
},
"createdDtm": {
"type": [
"string",
"null"
],
"description": "The timestamp for when the device record was created",
"format": "date-time",
"readOnly": true
},
"lastModifiedBy": {
"allOf": [
{
"$ref": "#/$defs/UserInfo"
}
],
"description": "The user that last modified the device record",
"readOnly": true
},
"lastModifiedDtm": {
"type": [
"string",
"null"
],
"description": "The timestamp for when the device record was last modified",
"format": "date-time",
"readOnly": true
},
"location": {
"allOf": [
{
"$ref": "#/$defs/DeviceLocation"
}
],
"description": "The device's location. To set the location, use locationName.",
"readOnly": true
}
},
"additionalProperties": false,
"$defs": {
"DeviceLocation": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The location's unique ID"
},
"name": {
"type": [
"string",
"null"
],
"description": "The location's name"
},
"countryCode": {
"type": [
"string",
"null"
],
"description": "The location's ISO country code"
}
},
"additionalProperties": false,
"description": "A real world location"
},
"DevicePlatform": {
"enum": [
"Mac",
"Windows",
"iOS",
"Android",
"ChromeOS",
"Linux"
],
"type": "string"
},
"UserInfo": {
"type": "object",
"properties": {
"userId": {
"type": [
"string",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"email": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": false
}
}
}
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/1password-device-patch"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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.