custom/JumpCloud.SDK.V1.json
{
"basePath": "/api/", "consumes": [ "application/json" ], "definitions": { "Error": { "properties": { "code": { "description": "HTTP status code", "format": "int32", "type": "integer" }, "message": { "description": "Error message", "type": "string" } }, "title": "Error", "type": "object" }, "application": { "properties": { "_id": { "type": "string" }, "active": { "type": "boolean" }, "beta": { "type": "boolean" }, "color": { "enum": [ "#202D38", "#005466", "#3E8696", "#006CAC", "#0617AC", "#7C6ADA", "#D5779D", "#9E2F00", "#FFB000", "#58C469", "#57C49F", "#FF6C03" ], "type": "string" }, "config": { "properties": { "acsUrl": { "properties": { "label": { "type": "string" }, "options": { "type": "string" }, "position": { "type": "integer" }, "readOnly": { "type": "boolean" }, "required": { "type": "boolean" }, "toggle": { "type": "string" }, "tooltip": { "properties": { "template": { "type": "string" }, "variables": { "properties": { "icon": { "type": "string" }, "message": { "type": "string" } }, "type": "object" } }, "type": "object" }, "type": { "type": "string" }, "value": { "type": "string" }, "visible": { "type": "boolean" } }, "type": "object" }, "constantAttributes": { "properties": { "label": { "type": "string" }, "mutable": { "type": "boolean" }, "options": { "type": "string" }, "position": { "type": "integer" }, "readOnly": { "type": "boolean" }, "required": { "type": "boolean" }, "toggle": { "type": "string" }, "tooltip": { "properties": { "template": { "type": "string" }, "variables": { "properties": { "icon": { "type": "string" }, "message": { "type": "string" } }, "type": "object" } }, "type": "object" }, "type": { "type": "string" }, "value": { "items": { "properties": { "name": { "type": "string" }, "readOnly": { "type": "boolean" }, "required": { "type": "boolean" }, "value": { "type": "string" }, "visible": { "type": "boolean" } }, "type": "object" }, "type": "array" }, "visible": { "type": "boolean" } }, "type": "object" }, "databaseAttributes": { "properties": { "position": { "type": "integer" } }, "type": "object" }, "idpCertificate": { "properties": { "label": { "type": "string" }, "options": { "type": "string" }, "position": { "type": "integer" }, "readOnly": { "type": "boolean" }, "required": { "type": "boolean" }, "toggle": { "type": "string" }, "tooltip": { "properties": { "template": { "type": "string" }, "variables": { "properties": { "icon": { "type": "string" }, "message": { "type": "string" } }, "type": "object" } }, "type": "object" }, "type": { "type": "string" }, "value": { "type": "string" }, "visible": { "type": "boolean" } }, "type": "object" }, "idpEntityId": { "properties": { "label": { "type": "string" }, "options": { "type": "string" }, "position": { "type": "integer" }, "readOnly": { "type": "boolean" }, "required": { "type": "boolean" }, "toggle": { "type": "string" }, "tooltip": { "properties": { "template": { "type": "string" }, "variables": { "properties": { "icon": { "type": "string" }, "message": { "type": "string" } }, "type": "object" } }, "type": "object" }, "type": { "type": "string" }, "value": { "type": "string" }, "visible": { "type": "boolean" } }, "type": "object" }, "idpPrivateKey": { "properties": { "label": { "type": "string" }, "options": { "type": "string" }, "position": { "type": "integer" }, "readOnly": { "type": "boolean" }, "required": { "type": "boolean" }, "toggle": { "type": "string" }, "tooltip": { "properties": { "template": { "type": "string" }, "variables": { "properties": { "icon": { "type": "string" }, "message": { "type": "string" } }, "type": "object" } }, "type": "object" }, "type": { "type": "string" }, "value": { "type": "string" }, "visible": { "type": "boolean" } }, "type": "object" }, "spEntityId": { "properties": { "label": { "type": "string" }, "options": { "type": "string" }, "position": { "type": "integer" }, "readOnly": { "type": "boolean" }, "required": { "type": "boolean" }, "toggle": { "type": "string" }, "tooltip": { "properties": { "template": { "type": "string" }, "variables": { "properties": { "icon": { "type": "string" }, "message": { "type": "string" } }, "type": "object" } }, "type": "object" }, "type": { "type": "string" }, "value": { "type": "string" }, "visible": { "type": "boolean" } }, "type": "object" } }, "type": "object" }, "created": { "type": "string" }, "databaseAttributes": { "items": { "type": "object", "additionalProperties": true }, "type": "array" }, "description": { "maxLength": 256, "type": "string" }, "displayLabel": { "type": "string" }, "displayName": { "type": "string" }, "learnMore": { "type": "string" }, "logo": { "properties": { "color": { "enum": [ "#202D38", "#005466", "#3E8696", "#006CAC", "#0617AC", "#7C6ADA", "#D5779D", "#9E2F00", "#FFB000", "#58C469", "#57C49F", "#FF6C03" ], "type": "string" }, "url": { "type": "string" } }, "type": "object" }, "name": { "type": "string" }, "organization": { "type": "string" }, "sso": { "$ref": "#/definitions/sso" }, "ssoUrl": { "type": "string" } }, "required": [ "config", "name", "ssoUrl" ], "title": "Application", "type": "object" }, "applicationslist": { "properties": { "name": { "type": "string" }, "results": { "description": "The list of applications.", "items": { "$ref": "#/definitions/application" }, "type": "array" }, "totalCount": { "description": "The total number of applications.", "type": "integer" } }, "title": "ApplicationsList", "type": "object" }, "applicationtemplate": { "properties": { "_id": { "type": "string" }, "active": { "type": "boolean" }, "beta": { "type": "boolean" }, "color": { "enum": [ "#202D38", "#005466", "#3E8696", "#006CAC", "#0617AC", "#7C6ADA", "#D5779D", "#9E2F00", "#FFB000", "#58C469", "#57C49F", "#FF6C03" ], "type": "string" }, "config": { "properties": { "acsUrl": { "properties": { "label": { "type": "string" }, "options": { "type": "string" }, "position": { "type": "integer" }, "readOnly": { "type": "boolean" }, "required": { "type": "boolean" }, "toggle": { "type": "string" }, "tooltip": { "properties": { "template": { "type": "string" }, "variables": { "properties": { "icon": { "type": "string" }, "message": { "type": "string" } }, "type": "object" } }, "type": "object" }, "type": { "type": "string" }, "value": { "type": "string" }, "visible": { "type": "boolean" } }, "type": "object" }, "constantAttributes": { "properties": { "label": { "type": "string" }, "mutable": { "type": "boolean" }, "options": { "type": "string" }, "position": { "type": "integer" }, "readOnly": { "type": "boolean" }, "required": { "type": "boolean" }, "toggle": { "type": "string" }, "tooltip": { "properties": { "template": { "type": "string" }, "variables": { "properties": { "icon": { "type": "string" }, "message": { "type": "string" } }, "type": "object" } }, "type": "object" }, "type": { "type": "string" }, "value": { "items": { "properties": { "name": { "type": "string" }, "readOnly": { "type": "boolean" }, "required": { "type": "boolean" }, "value": { "type": "string" }, "visible": { "type": "boolean" } }, "type": "object" }, "type": "array" }, "visible": { "type": "boolean" } }, "type": "object" }, "databaseAttributes": { "properties": { "position": { "type": "integer" } }, "type": "object" }, "idpCertificate": { "properties": { "label": { "type": "string" }, "options": { "type": "string" }, "position": { "type": "integer" }, "readOnly": { "type": "boolean" }, "required": { "type": "boolean" }, "toggle": { "type": "string" }, "tooltip": { "properties": { "template": { "type": "string" }, "variables": { "properties": { "icon": { "type": "string" }, "message": { "type": "string" } }, "type": "object" } }, "type": "object" }, "type": { "type": "string" }, "value": { "type": "string" }, "visible": { "type": "boolean" } }, "type": "object" }, "idpEntityId": { "properties": { "label": { "type": "string" }, "options": { "type": "string" }, "position": { "type": "integer" }, "readOnly": { "type": "boolean" }, "required": { "type": "boolean" }, "toggle": { "type": "string" }, "tooltip": { "properties": { "template": { "type": "string" }, "variables": { "properties": { "icon": { "type": "string" }, "message": { "type": "string" } }, "type": "object" } }, "type": "object" }, "type": { "type": "string" }, "value": { "type": "string" }, "visible": { "type": "boolean" } }, "type": "object" }, "idpPrivateKey": { "properties": { "label": { "type": "string" }, "options": { "type": "string" }, "position": { "type": "integer" }, "readOnly": { "type": "boolean" }, "required": { "type": "boolean" }, "toggle": { "type": "string" }, "tooltip": { "properties": { "template": { "type": "string" }, "variables": { "properties": { "icon": { "type": "string" }, "message": { "type": "string" } }, "type": "object" } }, "type": "object" }, "type": { "type": "string" }, "value": { "type": "string" }, "visible": { "type": "boolean" } }, "type": "object" }, "spEntityId": { "properties": { "label": { "type": "string" }, "options": { "type": "string" }, "position": { "type": "integer" }, "readOnly": { "type": "boolean" }, "required": { "type": "boolean" }, "toggle": { "type": "string" }, "tooltip": { "properties": { "template": { "type": "string" }, "variables": { "properties": { "icon": { "type": "string" }, "message": { "type": "string" } }, "type": "object" } }, "type": "object" }, "type": { "type": "string" }, "value": { "type": "string" }, "visible": { "type": "boolean" } }, "type": "object" } }, "type": "object" }, "displayLabel": { "type": "string" }, "displayName": { "type": "string" }, "isConfigured": { "type": "boolean" }, "jit": { "properties": { "attributes": { "type": "object", "additionalProperties": true }, "createOnly": { "type": "boolean" } }, "type": "object" }, "keywords": { "items": { "type": "string" }, "type": "array" }, "learnMore": { "type": "string" }, "logo": { "properties": { "url": { "type": "string" } }, "type": "object" }, "name": { "type": "string" }, "provision": { "properties": { "beta": { "type": "boolean" }, "groups_supported": { "type": "boolean" }, "type": { "type": "string" } }, "type": "object" }, "sso": { "$ref": "#/definitions/sso" }, "ssoUrl": { "type": "string" }, "status": { "enum": [ "end_of_life", "end_of_support", "beta" ], "type": "string" }, "test": { "type": "string" } }, "title": "ApplicationTemplate", "type": "object" }, "applicationtemplateslist": { "properties": { "results": { "description": "The list of applications.", "items": { "$ref": "#/definitions/applicationtemplate" }, "type": "array" }, "totalCount": { "description": "The total number of applications.", "type": "integer" } }, "title": "ApplicationTemplatesList", "type": "object" }, "command": { "properties": { "command": { "description": "The command to execute on the server.", "type": "string" }, "commandRunners": { "description": "An array of IDs of the Command Runner Users that can execute this command.", "items": { "type": "string" }, "type": "array" }, "commandType": { "default": "linux", "description": "The Command OS", "type": "string" }, "files": { "description": "An array of file IDs to include with the command.", "items": { "type": "string" }, "type": "array" }, "launchType": { "description": "How the command will execute.", "type": "string" }, "listensTo": { "description": "", "type": "string" }, "name": { "type": "string" }, "organization": { "description": "The ID of the organization.", "type": "string" }, "schedule": { "description": "A crontab that consists of: [ (seconds) (minutes) (hours) (days of month) (months) (weekdays) ] or [ immediate ]. If you send this as an empty string, it will run immediately.\n", "type": "string" }, "scheduleRepeatType": { "description": "When the command will repeat.", "type": "string" }, "shell": { "description": "The shell used to run the command.", "type": "string" }, "sudo": { "description": "", "type": "boolean" }, "systems": { "description": "An array of system IDs to run the command on. Not available if you are using Groups.", "items": { "type": "string" }, "type": "array" }, "timeToLiveSeconds": { "description": "Time in seconds a command can wait in the queue to be run before timing out", "type": "integer" }, "timeout": { "description": "The time in seconds to allow the command to run for.", "type": "string" }, "trigger": { "description": "The name of the command trigger.", "type": "string" }, "user": { "description": "The ID of the system user to run the command as. This field is required when creating a command with a commandType of \"mac\" or \"linux\".", "type": "string" } }, "required": [ "command", "commandType", "name" ], "title": "Command", "type": "object" }, "commandfilereturn": { "properties": { "results": { "items": { "properties": { "_id": { "description": "The ID of the file.", "type": "string" }, "destination": { "description": "The location where the file will be stored.", "type": "string" }, "name": { "description": "The file name.", "type": "string" } }, "type": "object" }, "type": "array" }, "totalCount": { "description": "The total number of commands files", "type": "integer" } }, "title": "CommandFileReturn", "type": "object" }, "commandresult": { "properties": { "_id": { "description": "The ID of the command.", "type": "string" }, "command": { "description": "The command that was executed on the system.", "type": "string" }, "files": { "description": "An array of file ids that were included in the command", "items": { "type": "string" }, "type": "array" }, "name": { "description": "The name of the command.", "type": "string" }, "organization": { "description": "The ID of the organization.", "type": "string" }, "requestTime": { "description": "The time that the command was sent.", "format": "date-time", "type": "string" }, "response": { "properties": { "data": { "properties": { "exitCode": { "description": "The stderr output from the command that ran.", "type": "integer" }, "output": { "description": "The output of the command that was executed.", "type": "string" } }, "type": "object" }, "error": { "description": "The stderr output from the command that ran.", "type": "string" }, "id": { "description": "ID of the response.", "type": "string" } }, "type": "object" }, "responseTime": { "description": "The time that the command was completed.", "format": "date-time", "type": "string" }, "sudo": { "description": "If the user had sudo rights", "type": "boolean" }, "system": { "description": "The name of the system the command was executed on.", "type": "string" }, "systemId": { "description": "The id of the system the command was executed on.", "type": "string" }, "user": { "description": "The user the command ran as.", "type": "string" }, "workflowId": { "type": "string" }, "workflowInstanceId": { "type": "string" } }, "title": "CommandResult", "type": "object" }, "commandresultslist": { "properties": { "results": { "items": { "properties": { "_id": { "description": "The ID of the command result.", "type": "string" }, "command": { "description": "The command that was executed on the system.", "type": "string" }, "exitCode": { "description": "The stderr output from the command that ran.", "type": "integer" }, "name": { "description": "The name of the command.", "type": "string" }, "requestTime": { "description": "The time (UTC) that the command was sent.", "format": "date-time", "type": "string" }, "responseTime": { "description": "The time (UTC) that the command was completed.", "format": "date-time", "type": "string" }, "sudo": { "description": "If the user had sudo rights.", "type": "boolean" }, "system": { "description": "The display name of the system the command was executed on.", "type": "string" }, "systemId": { "description": "The id of the system the command was executed on.", "type": "string" }, "user": { "description": "The user the command ran as.", "type": "string" }, "workflowId": { "description": "The id for the command that ran on the system.", "type": "string" } }, "type": "object" }, "type": "array" }, "totalCount": { "description": "The total number of command results.", "type": "integer" } }, "title": "CommandResultsList", "type": "object" }, "commandslist": { "properties": { "results": { "items": { "properties": { "_id": { "description": "The ID of the command.", "type": "string" }, "command": { "description": "The Command to execute.", "type": "string" }, "commandType": { "description": "The Command OS.", "type": "string" }, "launchType": { "description": "How the Command is executed.", "type": "string" }, "listensTo": { "type": "string" }, "name": { "description": "The name of the Command.", "type": "string" }, "organization": { "description": "The ID of the Organization.", "type": "string" }, "schedule": { "description": "A crontab that consists of: [ (seconds) (minutes) (hours) (days of month) (months) (weekdays) ] or [ immediate ]. If you send this as an empty string, it will run immediately.", "type": "string" }, "scheduleRepeatType": { "description": "When the command will repeat.", "type": "string" }, "trigger": { "description": "Trigger to execute command.", "type": "string" } }, "type": "object" }, "type": "array" }, "totalCount": { "description": "The total number of commands", "type": "integer" } }, "title": "CommandsList", "type": "object" }, "fde": { "description": "Indicates if the Full Disk Encryption is active in the system", "properties": { "active": { "type": "boolean" }, "keyPresent": { "type": "boolean" } }, "title": "FDE", "type": "object" }, "mfa": { "properties": { "configured": { "type": "boolean" }, "exclusion": { "type": "boolean" }, "exclusionDays": { "minimum": 1, "type": "integer" }, "exclusionUntil": { "format": "date-time", "type": "string" } }, "title": "mfa", "type": "object" }, "mfaEnrollment": { "properties": { "overallStatus": { "$ref": "#/definitions/mfaEnrollmentStatus" }, "pushStatus": { "$ref": "#/definitions/mfaEnrollmentStatus" }, "totpStatus": { "$ref": "#/definitions/mfaEnrollmentStatus" }, "webAuthnStatus": { "$ref": "#/definitions/mfaEnrollmentStatus" } }, "title": "mfaEnrollment", "type": "object" }, "mfaEnrollmentStatus": { "enum": [ "NOT_ENROLLED", "DISABLED", "PENDING_ACTIVATION", "ENROLLMENT_EXPIRED", "IN_ENROLLMENT", "PRE_ENROLLMENT", "ENROLLED" ], "type": "string" }, "organization": { "properties": { "_id": { "type": "string" }, "accountsReceivable": { "type": "string" }, "created": { "type": "string" }, "displayName": { "type": "string" }, "entitlement": { "$ref": "#/definitions/organizationentitlement" }, "hasCreditCard": { "type": "boolean" }, "hasStripeCustomerId": { "type": "boolean" }, "lastEstimateCalculationTimeStamp": { "type": "string" }, "lastSfdcSyncStatus": { "type": "object", "additionalProperties": true }, "logoUrl": { "type": "string" }, "provider": { "type": "string" }, "settings": { "$ref": "#/definitions/organizationsettings" }, "totalBillingEstimate": { "type": "integer" } }, "title": "Organization", "type": "object" }, "organizationentitlement": { "description": "", "properties": { "billingModel": { "type": "string" }, "entitlementProducts": { "items": { "properties": { "committedUsers": { "type": "integer" }, "contractType": { "type": "string" }, "maxUserCount": { "type": "integer" }, "name": { "type": "string" }, "pricePerUser": { "type": "integer" }, "productCategory": { "type": "string" }, "productCode": { "type": "string" }, "uncommittedUsers": { "type": "integer" } }, "type": "object" }, "type": "array" }, "isManuallyBilled": { "type": "boolean" }, "pricePerUserSum": { "type": "integer" } }, "title": "OrganizationEntitlement", "type": "object", "x-examples": {} }, "organizationsettings": { "description": "", "properties": { "agentVersion": { "type": "string" }, "betaFeatures": { "type": "object", "additionalProperties": true }, "contactEmail": { "type": "string" }, "contactName": { "type": "string" }, "deviceIdentificationEnabled": { "type": "boolean" }, "disableCommandRunner": { "type": "boolean" }, "disableGoogleLogin": { "type": "boolean" }, "disableLdap": { "type": "boolean" }, "disableUM": { "type": "boolean" }, "displayPreferences": { "properties": { "orgInsights": { "properties": { "applicationsUsage": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "consoleStats": { "properties": { "totalApplications": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "totalConfigurations": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "totalDevices": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "totalGroups": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "totalUsers": { "properties": { "visible": { "type": "boolean" } }, "type": "object" } }, "type": "object" }, "deviceNotifications": { "properties": { "agentOutOfDateMetric": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "inactiveMetric": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "uptimeMetric": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "visible": { "type": "boolean" }, "withoutPoliciesMetric": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "withoutUsersMetric": { "properties": { "visible": { "type": "boolean" } }, "type": "object" } }, "type": "object" }, "diskEncryption": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "expiredPasswords": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "failedCommands": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "failedConfigurations": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "fundamentals": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "jcUniversity": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "learningCenter": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "mdmCertificateExpirations": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "mfaEnrolledDevices": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "newOSReleases": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "newUsers": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "officeHours": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "pendingCommands": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "upcomingPasswordExpiration": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "userLockouts": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "userNotifications": { "properties": { "userWithAdminSudoPasswordlessAccess": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "usersWithAdminSudoAccess": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "usersWithSambaAccess": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "usersWithoutDevices": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "usersWithoutPassword": { "properties": { "visible": { "type": "boolean" } }, "type": "object" }, "visible": { "type": "boolean" } }, "type": "object" } }, "type": "object" } }, "type": "object" }, "duplicateLDAPGroups": { "type": "boolean" }, "emailDisclaimer": { "type": "string" }, "enableGoogleApps": { "type": "boolean" }, "enableManagedUID": { "type": "boolean" }, "enableO365": { "type": "boolean" }, "enableUserPortalAgentInstall": { "type": "boolean" }, "features": { "properties": { "directoryInsights": { "properties": { "enabled": { "type": "boolean" } }, "type": "object" }, "directoryInsightsPremium": { "properties": { "createdAt": { "type": "string" }, "enabled": { "type": "boolean" }, "updatedAt": { "type": "string" } }, "type": "object" }, "systemInsights": { "properties": { "createdAt": { "type": "string" }, "enableNewDarwin": { "type": "boolean" }, "enableNewLinux": { "type": "boolean" }, "enableNewWindows": { "type": "boolean" }, "enabled": { "type": "boolean" }, "updatedAt": { "type": "string" } }, "type": "object" } }, "type": "object" }, "growthData": { "description": "Object containing Optimizely experimentIds and states corresponding to them", "type": "object", "additionalProperties": true }, "logo": { "type": "string" }, "name": { "type": "string" }, "newSystemUserStateDefaults": { "properties": { "applicationImport": { "description": "The default user state for a user created using the\n[Bulk Users Create](https://docs.jumpcloud.com/api/2.0/index.html#operation/bulk_usersCreate)\nendpoint. See endpoint documentation for more details.", "enum": [ "ACTIVATED", "STAGED" ], "type": "string" }, "csvImport": { "description": "The default user state for a user created using the\n[Bulk Users Create](https://docs.jumpcloud.com/api/2.0/index.html#operation/bulk_usersCreate)\nendpoint. See endpoint documentation for more details.", "enum": [ "ACTIVATED", "STAGED" ], "type": "string" }, "manualEntry": { "description": "The default state for a user that is created using the\n[Create a system user](https://docs.jumpcloud.com/api/1.0/index.html#operation/systemusers_post)\nendpoint. See endpoint documentation for more details.", "enum": [ "ACTIVATED", "STAGED" ], "type": "string" } }, "type": "object" }, "passwordCompliance": { "enum": [ "custom", "pci3", "windows" ], "type": "string" }, "passwordPolicy": { "properties": { "allowUsernameSubstring": { "type": "boolean" }, "daysAfterExpirationToSelfRecover": { "description": "Deprecated field used for the legacy grace period feature.", "type": "integer" }, "daysBeforeExpirationToForceReset": { "minimum": 1, "type": "integer" }, "effectiveDate": { "type": "string" }, "enableDaysAfterExpirationToSelfRecover": { "type": "boolean" }, "enableDaysBeforeExpirationToForceReset": { "type": "boolean" }, "enableLockoutTimeInSeconds": { "type": "boolean" }, "enableMaxHistory": { "type": "boolean" }, "enableMaxLoginAttempts": { "type": "boolean" }, "enableMinChangePeriodInDays": { "type": "boolean" }, "enableMinLength": { "type": "boolean" }, "enablePasswordExpirationInDays": { "type": "boolean" }, "enableRecoveryEmail": { "type": "boolean" }, "enableResetLockoutCounter": { "type": "boolean" }, "gracePeriodDate": { "type": "string" }, "lockoutTimeInSeconds": { "maximum": 5400, "minimum": 300, "type": "integer" }, "maxHistory": { "maximum": 24, "minimum": 1, "type": "integer" }, "maxLoginAttempts": { "minimum": 1, "type": "integer" }, "minChangePeriodInDays": { "type": "integer" }, "minLength": { "type": "integer" }, "needsLowercase": { "type": "boolean" }, "needsNumeric": { "type": "boolean" }, "needsSymbolic": { "type": "boolean" }, "needsUppercase": { "type": "boolean" }, "passwordExpirationInDays": { "minimum": 1, "type": "integer" }, "resetLockoutCounterMinutes": { "minimum": 1, "type": "integer" } }, "type": "object" }, "pendingDelete": { "type": "boolean" }, "showIntro": { "type": "boolean" }, "systemUserPasswordExpirationInDays": { "type": "integer" }, "systemUsersCanEdit": { "type": "boolean" }, "systemUsersCap": { "minimum": 0, "type": "integer" }, "trustedAppConfig": { "$ref": "#/definitions/trustedappConfigGet" }, "userPortal": { "properties": { "idleSessionDurationMinutes": { "maximum": 129600, "minimum": 1, "type": "integer" } }, "type": "object" } }, "title": "OrganizationSettings", "type": "object", "x-examples": {} }, "organizationsettingsput": { "properties": { "contactEmail": { "type": "string" }, "contactName": { "type": "string" }, "deviceIdentificationEnabled": { "type": "boolean" }, "disableGoogleLogin": { "type": "boolean" }, "disableLdap": { "type": "boolean" }, "disableUM": { "type": "boolean" }, "duplicateLDAPGroups": { "type": "boolean" }, "emailDisclaimer": { "type": "string" }, "enableManagedUID": { "type": "boolean" }, "features": { "properties": { "directoryInsights": { "properties": { "enabled": { "type": "boolean" } }, "type": "object" }, "directoryInsightsPremium": { "properties": { "createdAt": { "type": "string" }, "enabled": { "type": "boolean" }, "updatedAt": { "type": "string" } }, "type": "object" }, "systemInsights": { "properties": { "createdAt": { "type": "string" }, "enableNewDarwin": { "type": "boolean" }, "enableNewLinux": { "type": "boolean" }, "enableNewWindows": { "type": "boolean" }, "enabled": { "type": "boolean" }, "updatedAt": { "type": "string" } }, "type": "object" } }, "type": "object" }, "growthData": { "description": "Object containing Optimizely experimentIds and states corresponding to them", "type": "object", "additionalProperties": true }, "logo": { "type": "string" }, "name": { "type": "string" }, "newSystemUserStateDefaults": { "properties": { "applicationImport": { "enum": [ "ACTIVATED", "STAGED" ], "type": "string" }, "csvImport": { "enum": [ "ACTIVATED", "STAGED" ], "type": "string" }, "manualEntry": { "enum": [ "ACTIVATED", "STAGED" ], "type": "string" } }, "type": "object" }, "passwordCompliance": { "enum": [ "custom", "pci3", "windows" ], "type": "string" }, "passwordPolicy": { "properties": { "allowUsernameSubstring": { "type": "boolean" }, "daysAfterExpirationToSelfRecover": { "description": "Deprecated field used for the legacy grace period feature.", "type": "integer" }, "daysBeforeExpirationToForceReset": { "minimum": 1, "type": "integer" }, "effectiveDate": { "type": "string" }, "enableDaysAfterExpirationToSelfRecover": { "type": "boolean" }, "enableDaysBeforeExpirationToForceReset": { "type": "boolean" }, "enableLockoutTimeInSeconds": { "type": "boolean" }, "enableMaxHistory": { "type": "boolean" }, "enableMaxLoginAttempts": { "type": "boolean" }, "enableMinChangePeriodInDays": { "type": "boolean" }, "enableMinLength": { "type": "boolean" }, "enablePasswordExpirationInDays": { "type": "boolean" }, "gracePeriodDate": { "type": "string" }, "lockoutTimeInSeconds": { "type": "integer" }, "maxHistory": { "maximum": 24, "minimum": 1, "type": "integer" }, "maxLoginAttempts": { "minimum": 1, "type": "integer" }, "minChangePeriodInDays": { "type": "integer" }, "minLength": { "type": "integer" }, "needsLowercase": { "type": "boolean" }, "needsNumeric": { "type": "boolean" }, "needsSymbolic": { "type": "boolean" }, "needsUppercase": { "type": "boolean" }, "passwordExpirationInDays": { "minimum": 1, "type": "integer" } }, "type": "object" }, "showIntro": { "type": "boolean" }, "systemUserPasswordExpirationInDays": { "type": "integer" }, "systemUsersCanEdit": { "type": "boolean" }, "systemUsersCap": { "minimum": 0, "type": "integer" }, "trustedAppConfig": { "$ref": "#/definitions/trustedappConfigPut" }, "userPortal": { "properties": { "idleSessionDurationMinutes": { "maximum": 129600, "minimum": 1, "type": "integer" } }, "type": "object" } }, "title": "OrganizationSettingsPut", "type": "object" }, "organizationslist": { "properties": { "results": { "description": "The list of organizations.", "items": { "properties": { "_id": { "description": "The ID of the organization.", "type": "string" }, "displayName": { "description": "The name of the organization.", "type": "string" }, "logoUrl": { "description": "The organization logo image URL. ", "type": "string" } }, "type": "object" }, "type": "array" }, "totalCount": { "description": "The total number of organizations. ", "type": "integer" } }, "title": "OrganizationList", "type": "object" }, "radiusserver": { "properties": { "_id": { "type": "string" }, "authIdp": { "enum": [ "JUMPCLOUD", "AZURE" ], "type": "string" }, "mfa": { "enum": [ "DISABLED", "ENABLED", "REQUIRED", "ALWAYS" ], "type": "string" }, "name": { "type": "string" }, "networkSourceIp": { "type": "string" }, "organization": { "type": "string" }, "sharedSecret": { "type": "string" }, "userLockoutAction": { "type": "string" }, "userPasswordExpirationAction": { "type": "string" } }, "title": "RadiusServer", "type": "object" }, "radiusserverpost": { "properties": { "authIdp": { "enum": [ "JUMPCLOUD", "AZURE" ], "type": "string" }, "mfa": { "enum": [ "DISABLED", "ENABLED", "REQUIRED", "ALWAYS" ], "type": "string" }, "name": { "type": "string" }, "networkSourceIp": { "type": "string" }, "sharedSecret": { "description": "RADIUS shared secret between the server and client.", "type": "string" }, "userLockoutAction": { "type": "string" }, "userPasswordExpirationAction": { "type": "string" } }, "required": [ "networkSourceIp", "name", "sharedSecret" ], "title": "RadiusServerPost", "type": "object" }, "radiusserverput": { "properties": { "_id": { "type": "string" }, "authIdp": { "enum": [ "JUMPCLOUD", "AZURE" ], "type": "string" }, "mfa": { "enum": [ "DISABLED", "ENABLED", "REQUIRED", "ALWAYS" ], "type": "string" }, "name": { "type": "string" }, "networkSourceIp": { "type": "string" }, "userLockoutAction": { "type": "string" }, "userPasswordExpirationAction": { "type": "string" } }, "title": "RadiusServerPut", "type": "object" }, "radiusserverslist": { "properties": { "results": { "items": { "$ref": "#/definitions/radiusserver" }, "type": "array" }, "totalCount": { "type": "integer" } }, "title": "RadiusServersList", "type": "object" }, "search": { "properties": { "fields": { "type": "string" }, "filter": { "type": "object", "additionalProperties": true }, "searchFilter": { "type": "object", "additionalProperties": true } }, "title": "Search", "type": "object" }, "sshkeylist": { "properties": { "_id": { "description": "The ID of the SSH key.", "type": "string" }, "create_date": { "description": "The date the SSH key was created.", "type": "string" }, "name": { "description": "The name of the SSH key.", "type": "string" }, "public_key": { "description": "The Public SSH key.", "type": "string" } }, "title": "SSHKeyList", "type": "object" }, "sshkeypost": { "properties": { "name": { "description": "The name of the SSH key.", "type": "string" }, "public_key": { "description": "The Public SSH key.", "type": "string" } }, "required": [ "public_key", "name" ], "title": "SSHKeyPost", "type": "object" }, "sso": { "properties": { "beta": { "type": "boolean" }, "idpCertExpirationAt": { "format": "date-time", "type": "string" }, "jit": { "type": "boolean" }, "type": { "type": "string" } }, "type": "object" }, "JcSystem": { "properties": { "_id": { "type": "string" }, "active": { "type": "boolean" }, "agentVersion": { "type": "string" }, "allowMultiFactorAuthentication": { "type": "boolean" }, "allowPublicKeyAuthentication": { "type": "boolean" }, "allowSshPasswordAuthentication": { "type": "boolean" }, "allowSshRootLogin": { "type": "boolean" }, "amazonInstanceID": { "type": "string" }, "arch": { "type": "string" }, "azureAdJoined": { "type": "boolean" }, "builtInCommands": { "items": { "properties": { "name": { "enum": [ "erase", "lock", "restart", "shutdown" ], "type": "string" }, "type": { "enum": [ "security" ], "type": "string" } }, "type": "object" }, "readOnly": true, "type": "array" }, "connectionHistory": { "items": { "type": "object", "additionalProperties": true }, "type": "array" }, "created": { "format": "date-time", "type": "string" }, "description": { "type": "string" }, "displayName": { "type": "string" }, "domainInfo": { "properties": { "domainName": { "type": "string" }, "partOfDomain": { "type": "boolean" } }, "type": "object" }, "fde": { "$ref": "#/definitions/fde" }, "fileSystem": { "type": "string", "x-nullable": true }, "hasServiceAccount": { "type": "boolean" }, "hostname": { "type": "string" }, "lastContact": { "format": "date-time", "type": "string", "x-nullable": true }, "mdm": { "properties": { "dep": { "type": "boolean" }, "profileIdentifier": { "type": "string" }, "userApproved": { "type": "boolean" }, "vendor": { "enum": [ "unknown", "none", "internal", "external" ], "type": "string" } }, "type": "object" }, "modifySSHDConfig": { "type": "boolean" }, "networkInterfaces": { "items": { "properties": { "address": { "type": "string" }, "family": { "enum": [ "IPv4", "IPv6" ], "type": "string" }, "internal": { "type": "boolean" }, "name": { "type": "string" } }, "type": "object" }, "type": "array" }, "organization": { "type": "string" }, "os": { "type": "string" }, "osFamily": { "type": "string" }, "osVersionDetail": { "properties": { "major": { "type": "string" }, "minor": { "type": "string" }, "osName": { "type": "string" }, "patch": { "type": "string" }, "releaseName": { "type": "string" }, "revision": { "type": "string" } }, "type": "object" }, "provisionMetadata": { "properties": { "provisioner": { "properties": { "provisionerId": { "type": "string" }, "type": { "default": "administrator", "enum": [ "administrator", "mdm", "user" ], "type": "string" } }, "type": "object" } }, "type": "object" }, "remoteIP": { "type": "string" }, "serialNumber": { "type": "string" }, "serviceAccountState": { "properties": { "hasSecureToken": { "type": "boolean" }, "passwordAPFSValid": { "type": "boolean" }, "passwordODValid": { "type": "boolean" } }, "type": "object" }, "sshRootEnabled": { "type": "boolean" }, "sshdParams": { "items": { "properties": { "name": { "type": "string" }, "value": { "type": "string" } }, "type": "object" }, "type": "array" }, "systemInsights": { "properties": { "state": { "enum": [ "enabled", "disabled", "deferred" ], "type": "string" } }, "type": "object" }, "systemTimezone": { "type": "integer" }, "templateName": { "type": "string" }, "userMetrics": { "items": { "properties": { "admin": { "type": "boolean" }, "managed": { "type": "boolean" }, "secureTokenEnabled": { "type": "boolean" }, "suspended": { "type": "boolean" }, "userName": { "type": "string" } }, "type": "object" }, "type": "array" }, "version": { "type": "string" } }, "title": "JcSystem", "type": "object" }, "systemput": { "properties": { "agentBoundMessages": { "items": { "properties": { "cmd": { "type": "string" } }, "type": "object" }, "type": "array" }, "allowMultiFactorAuthentication": { "type": "boolean" }, "allowPublicKeyAuthentication": { "type": "boolean" }, "allowSshPasswordAuthentication": { "type": "boolean" }, "allowSshRootLogin": { "type": "boolean" }, "displayName": { "type": "string" } }, "title": "SystemPut", "type": "object" }, "systemslist": { "properties": { "results": { "description": "The list of systems.", "items": { "$ref": "#/definitions/JcSystem" }, "type": "array" }, "totalCount": { "description": "The total number of systems.", "type": "integer" } }, "title": "SystemsList", "type": "object" }, "systemuserput": { "properties": { "account_locked": { "type": "boolean" }, "addresses": { "description": "type, poBox, extendedAddress, streetAddress, locality, region, postalCode, country", "items": { "properties": { "country": { "maxLength": 1024, "type": "string" }, "extendedAddress": { "maxLength": 1024, "type": "string" }, "locality": { "maxLength": 1024, "type": "string" }, "poBox": { "maxLength": 1024, "type": "string" }, "postalCode": { "maxLength": 1024, "type": "string" }, "region": { "maxLength": 1024, "type": "string" }, "streetAddress": { "maxLength": 1024, "type": "string" }, "type": { "maxLength": 1024, "type": "string" } }, "type": "object" }, "type": "array" }, "allow_public_key": { "type": "boolean" }, "alternateEmail": { "type": "string" }, "attributes": { "items": { "properties": { "name": { "type": "string" }, "value": { "maxLength": 1024, "type": "string" } }, "type": "object" }, "type": "array" }, "company": { "maxLength": 1024, "type": "string" }, "costCenter": { "maxLength": 1024, "type": "string" }, "department": { "maxLength": 1024, "type": "string" }, "description": { "maxLength": 1024, "type": "string" }, "disableDeviceMaxLoginAttempts": { "type": "boolean" }, "displayname": { "maxLength": 1024, "type": "string" }, "email": { "maxLength": 1024, "type": "string" }, "employeeIdentifier": { "description": "Must be unique per user. ", "maxLength": 256, "type": "string" }, "employeeType": { "maxLength": 1024, "type": "string" }, "enable_managed_uid": { "type": "boolean" }, "enable_user_portal_multifactor": { "type": "boolean" }, "external_dn": { "type": "string" }, "external_password_expiration_date": { "type": "string" }, "external_source_type": { "type": "string" }, "externally_managed": { "type": "boolean" }, "firstname": { "maxLength": 1024, "type": "string" }, "jobTitle": { "maxLength": 1024, "type": "string" }, "lastname": { "maxLength": 1024, "type": "string" }, "ldap_binding_user": { "type": "boolean" }, "location": { "maxLength": 1024, "type": "string" }, "managedAppleId": { "maxLength": 1024, "type": "string" }, "manager": { "description": "Relation with another systemuser to identify the last as a manager.", "type": "string" }, "mfa": { "$ref": "#/definitions/mfa" }, "middlename": { "maxLength": 1024, "type": "string" }, "password": { "type": "string" }, "password_never_expires": { "type": "boolean" }, "phoneNumbers": { "items": { "properties": { "number": { "maxLength": 1024, "type": "string" }, "type": { "maxLength": 1024, "type": "string" } }, "type": "object" }, "type": "array" }, "public_key": { "type": "string" }, "relationships": { "items": { "properties": { "type": { "type": "string" }, "value": { "type": "string" } }, "type": "object" }, "type": "array" }, "samba_service_user": { "type": "boolean" }, "ssh_keys": { "items": { "$ref": "#/definitions/sshkeypost" }, "type": "array" }, "state": { "enum": [ "ACTIVATED", "SUSPENDED" ], "type": "string" }, "sudo": { "type": "boolean" }, "suspended": { "type": "boolean" }, "unix_guid": { "minimum": 1, "type": "integer" }, "unix_uid": { "minimum": 1, "type": "integer" }, "username": { "maxLength": 1024, "type": "string" } }, "title": "SystemUserPut", "type": "object" }, "systemuserputpost": { "properties": { "account_locked": { "type": "boolean" }, "activated": { "type": "boolean" }, "addresses": { "items": { "properties": { "country": { "type": "string" }, "extendedAddress": { "type": "string" }, "locality": { "type": "string" }, "poBox": { "type": "string" }, "postalCode": { "type": "string" }, "region": { "type": "string" }, "streetAddress": { "type": "string" }, "type": { "type": "string" } }, "type": "object" }, "type": "array" }, "allow_public_key": { "type": "boolean" }, "alternateEmail": { "type": "string" }, "attributes": { "items": { "properties": { "name": { "type": "string" }, "value": { "maxLength": 1024, "type": "string" } }, "type": "object" }, "type": "array" }, "company": { "type": "string" }, "costCenter": { "type": "string" }, "department": { "type": "string" }, "description": { "maxLength": 1024, "type": "string" }, "disableDeviceMaxLoginAttempts": { "type": "boolean" }, "displayname": { "type": "string" }, "email": { "maxLength": 1024, "type": "string" }, "employeeIdentifier": { "description": "Must be unique per user. ", "maxLength": 256, "type": "string" }, "employeeType": { "type": "string" }, "enable_managed_uid": { "type": "boolean" }, "enable_user_portal_multifactor": { "type": "boolean" }, "external_dn": { "type": "string" }, "external_password_expiration_date": { "format": "date-time", "type": "string" }, "external_source_type": { "type": "string" }, "externally_managed": { "type": "boolean" }, "firstname": { "type": "string" }, "jobTitle": { "type": "string" }, "lastname": { "type": "string" }, "ldap_binding_user": { "type": "boolean" }, "location": { "type": "string" }, "managedAppleId": { "maxLength": 1024, "type": "string" }, "manager": { "description": "Relation with another systemuser to identify the last as a manager.", "type": "string" }, "mfa": { "$ref": "#/definitions/mfa" }, "middlename": { "type": "string" }, "password": { "type": "string" }, "password_never_expires": { "type": "boolean" }, "passwordless_sudo": { "type": "boolean" }, "phoneNumbers": { "items": { "properties": { "number": { "type": "string" }, "type": { "type": "string" } }, "type": "object" }, "type": "array" }, "public_key": { "type": "string" }, "recoveryEmail": { "properties": { "address": { "type": "string" } }, "type": "object" }, "relationships": { "items": { "properties": { "type": { "type": "string" }, "value": { "type": "string" } }, "type": "object" }, "type": "array" }, "samba_service_user": { "type": "boolean" }, "state": { "enum": [ "STAGED", "ACTIVATED", "SUSPENDED" ], "type": "string" }, "sudo": { "type": "boolean" }, "suspended": { "type": "boolean" }, "unix_guid": { "minimum": 1, "type": "integer" }, "unix_uid": { "minimum": 1, "type": "integer" }, "username": { "type": "string" } }, "required": [ "email", "username" ], "title": "SystemUserPost", "type": "object" }, "systemuserreturn": { "properties": { "_id": { "type": "string" }, "account_locked": { "type": "boolean" }, "account_locked_date": { "type": "string", "x-nullable": true }, "activated": { "type": "boolean" }, "addresses": { "items": { "properties": { "country": { "maxLength": 1024, "type": "string" }, "extendedAddress": { "maxLength": 1024, "type": "string" }, "id": { "type": "string" }, "locality": { "maxLength": 1024, "type": "string" }, "poBox": { "maxLength": 1024, "type": "string" }, "postalCode": { "maxLength": 1024, "type": "string" }, "region": { "maxLength": 1024, "type": "string" }, "streetAddress": { "maxLength": 1024, "type": "string" }, "type": { "maxLength": 1024, "type": "string" } }, "type": "object" }, "type": "array" }, "allow_public_key": { "type": "boolean" }, "alternateEmail": { "type": "string" }, "attributes": { "items": { "properties": { "name": { "type": "string" }, "value": { "maxLength": 1024, "type": "string" } }, "type": "object" }, "type": "array" }, "badLoginAttempts": { "minimum": 0, "type": "integer" }, "company": { "maxLength": 1024, "type": "string" }, "costCenter": { "maxLength": 1024, "type": "string" }, "created": { "type": "string" }, "creationSource": { "maxLength": 1024, "type": "string" }, "department": { "maxLength": 1024, "type": "string" }, "description": { "maxLength": 1024, "type": "string" }, "disableDeviceMaxLoginAttempts": { "type": "boolean" }, "displayname": { "maxLength": 1024, "type": "string" }, "email": { "maxLength": 1024, "type": "string" }, "employeeIdentifier": { "description": "Must be unique per user. ", "maxLength": 256, "type": "string" }, "employeeType": { "maxLength": 1024, "type": "string" }, "enable_managed_uid": { "type": "boolean" }, "enable_user_portal_multifactor": { "type": "boolean" }, "external_dn": { "type": "string" }, "external_password_expiration_date": { "type": "string" }, "external_source_type": { "type": "string" }, "externally_managed": { "type": "boolean" }, "firstname": { "maxLength": 1024, "type": "string" }, "jobTitle": { "maxLength": 1024, "type": "string" }, "lastname": { "maxLength": 1024, "type": "string" }, "ldap_binding_user": { "type": "boolean" }, "location": { "maxLength": 1024, "type": "string" }, "managedAppleId": { "maxLength": 1024, "type": "string" }, "manager": { "description": "Relation with another systemuser to identify the last as a manager.", "type": "string" }, "mfa": { "$ref": "#/definitions/mfa" }, "mfaEnrollment": { "$ref": "#/definitions/mfaEnrollment" }, "middlename": { "maxLength": 1024, "type": "string" }, "organization": { "type": "string" }, "password_expiration_date": { "type": "string", "x-nullable": true }, "password_expired": { "type": "boolean" }, "password_never_expires": { "type": "boolean" }, "passwordless_sudo": { "type": "boolean" }, "phoneNumbers": { "items": { "properties": { "id": { "type": "string" }, "number": { "maxLength": 1024, "type": "string" }, "type": { "maxLength": 1024, "type": "string" } }, "type": "object" }, "type": "array" }, "public_key": { "type": "string" }, "recoveryEmail": { "properties": { "address": { "type": "string" }, "verified": { "type": "boolean" }, "verifiedAt": { "type": "string" } }, "type": "object" }, "relationships": { "items": { "properties": { "type": { "type": "string" }, "value": { "type": "string" } }, "type": "object" }, "type": "array" }, "samba_service_user": { "type": "boolean" }, "ssh_keys": { "items": { "$ref": "#/definitions/sshkeylist" }, "type": "array" }, "state": { "enum": [ "STAGED", "ACTIVATED", "SUSPENDED" ], "type": "string" }, "sudo": { "type": "boolean" }, "suspended": { "type": "boolean" }, "totp_enabled": { "type": "boolean" }, "unix_guid": { "minimum": 1, "type": "integer" }, "unix_uid": { "minimum": 1, "type": "integer" }, "username": { "maxLength": 1024, "type": "string" } }, "title": "SystemUserReturn", "type": "object" }, "systemuserslist": { "properties": { "results": { "description": "The list of system users.", "items": { "$ref": "#/definitions/systemuserreturn" }, "type": "array" }, "totalCount": { "description": "The total number of system users.", "type": "integer" } }, "title": "SystemUsersList", "type": "object" }, "triggerreturn": { "properties": { "triggered": { "items": { "type": "string" }, "type": "array" } }, "title": "TriggerReturn", "type": "object" }, "trustedappConfigGet": { "description": "Object containing information about the list of trusted applications for the organization", "properties": { "checksum": { "description": "Checksum to validate the trustedApp configuration for the organization", "example": "thisIsAnExampleChecksum1234", "type": "string" }, "trustedApps": { "description": "List of authorized apps for the organization ", "items": { "description": "Represents an application that is going to be trusted by the organization", "properties": { "name": { "description": "Name of the trusted application", "example": "Application 1", "type": "string" }, "path": { "description": "Absolute path for the app's location in user's device", "example": "/someuser/Applications/application1.app", "type": "string" }, "teamid": { "description": "App's Team ID", "example": "FakeTeamID", "type": "string" } }, "required": [ "name" ], "type": "object" }, "minItems": 1, "type": "array" } }, "required": [ "checksum", "trustedApps" ], "title": "trustedappConfigGet", "type": "object" }, "trustedappConfigPut": { "description": "Object containing information about the list of trusted applications for the organization", "properties": { "trustedApps": { "description": "List of authorized apps for the organization ", "items": { "description": "Represents an application that is going to be trusted by the organization", "properties": { "name": { "description": "Name of the trusted application", "example": "Application 1", "type": "string" }, "path": { "description": "Absolute path for the app's location in user's device", "example": "/someuser/Applications/application1.app", "type": "string" }, "teamid": { "description": "App's Team ID", "example": "FakeTeamID", "type": "string" } }, "required": [ "name" ], "type": "object" }, "minItems": 1, "type": "array" } }, "required": [ "trustedApps" ], "title": "trustedappConfigPut", "type": "object" }, "userput": { "properties": { "email": { "format": "email", "maxLength": 1024, "type": "string" }, "enableMultiFactor": { "type": "boolean" }, "firstname": { "type": "string" }, "growthData": { "type": "object", "additionalProperties": true }, "lastWhatsNewChecked": { "format": "date", "type": "string" }, "lastname": { "type": "string" }, "roleName": { "type": "string" } }, "title": "UserPut", "type": "object" }, "userreturn": { "properties": { "_id": { "type": "string" }, "created": { "format": "date-time", "type": "string" }, "disableIntroduction": { "type": "boolean" }, "email": { "type": "string" }, "enableMultiFactor": { "type": "boolean" }, "firstname": { "type": "string" }, "growthData": { "properties": { "experimentStates": { "additionalProperties": true, "type": "object" }, "onboardingState": { "additionalProperties": true, "type": "object" } }, "type": "object" }, "lastWhatsNewChecked": { "format": "date-time", "type": "string" }, "lastname": { "type": "string" }, "organization": { "type": "string" }, "provider": { "type": "string" }, "role": { "type": "string" }, "roleName": { "type": "string" }, "sessionCount": { "type": "integer" }, "suspended": { "type": "boolean" }, "totpEnrolled": { "type": "boolean" }, "usersTimeZone": { "type": "string" } }, "title": "UserReturn", "type": "object" } }, "host": "console.jumpcloud.com", "info": { "contact": { "email": "support@jumpcloud.com", "name": "JumpCloud Support", "url": "https://support.jumpcloud.com/support/s/" }, "description": "# Overview\n\nJumpCloud's V1 API. This set of endpoints allows JumpCloud customers to manage commands, systems, and system users.\n\n# API Key\n\n## Access Your API Key\n\nTo locate your API Key:\n\n1. Log into the [JumpCloud Admin Console](https://console.jumpcloud.com/).\n2. Go to the username drop down located in the top-right of the Console.\n3. Retrieve your API key from API Settings.\n\n## API Key Considerations\n\nThis API key is associated to the currently logged in administrator. Other admins will have different API keys.\n\n**WARNING** Please keep this API key secret, as it grants full access to any data accessible via your JumpCloud console account.\n\nYou can also reset your API key in the same location in the JumpCloud Admin Console.\n\n## Recycling or Resetting Your API Key\n\nIn order to revoke access with the current API key, simply reset your API key. This will render all calls using the previous API key inaccessible.\n\nYour API key will be passed in as a header with the header name \"x-api-key\".\n\n```bash\ncurl -H \"x-api-key: [YOUR_API_KEY_HERE]\" \"https://console.jumpcloud.com/api/systemusers\"\n```\n\n# System Context\n\n* [Introduction](#introduction)\n* [Supported endpoints](#supported-endpoints)\n* [Response codes](#response-codes)\n* [Authentication](#authentication)\n* [Additional examples](#additional-examples)\n* [Third party](#third-party)\n\n## Introduction\n\nJumpCloud System Context Authorization is an alternative way to authenticate with a subset of JumpCloud's REST APIs. Using this method, a system can manage its information and resource associations, allowing modern auto provisioning environments to scale as needed.\n\n**Notes:**\n\n * The following documentation applies to Linux Operating Systems only.\n * Systems that have been automatically enrolled using Apple's Device Enrollment Program (DEP) or systems enrolled using the User Portal install are not eligible to use the System Context API to prevent unauthorized access to system groups and resources. If a script that utilizes the System Context API is invoked on a system enrolled in this way, it will display an error.\n\n## Supported Endpoints\n\nJumpCloud System Context Authorization can be used in conjunction with Systems endpoints found in the V1 API and certain System Group endpoints found in the v2 API.\n\n* A system may fetch, alter, and delete metadata about itself, including manipulating a system's Group and Systemuser associations,\n * `/api/systems/{system_id}` | [`GET`](https://docs.jumpcloud.com/api/1.0/index.html#operation/systems_get) [`PUT`](https://docs.jumpcloud.com/api/1.0/index.html#operation/systems_put)\n* A system may delete itself from your JumpCloud organization\n * `/api/systems/{system_id}` | [`DELETE`](https://docs.jumpcloud.com/api/1.0/index.html#operation/systems_delete)\n* A system may fetch its direct resource associations under v2 (Groups)\n * `/api/v2/systems/{system_id}/memberof` | [`GET`](https://docs.jumpcloud.com/api/2.0/index.html#operation/graph_systemGroupMembership)\n * `/api/v2/systems/{system_id}/associations` | [`GET`](https://docs.jumpcloud.com/api/2.0/index.html#operation/graph_systemAssociationsList)\n * `/api/v2/systems/{system_id}/users` | [`GET`](https://docs.jumpcloud.com/api/2.0/index.html#operation/graph_systemTraverseUser)\n* A system may alter its direct resource associations under v2 (Groups)\n * `/api/v2/systems/{system_id}/associations` | [`POST`](https://docs.jumpcloud.com/api/2.0/index.html#operation/graph_systemAssociationsPost)\n* A system may alter its System Group associations\n * `/api/v2/systemgroups/{group_id}/members` | [`POST`](https://docs.jumpcloud.com/api/2.0/index.html#operation/graph_systemGroupMembersPost)\n * _NOTE_ If a system attempts to alter the system group membership of a different system the request will be rejected\n\n## Response Codes\n\nIf endpoints other than those described above are called using the System Context API, the server will return a `401` response.\n\n## Authentication\n\nTo allow for secure access to our APIs, you must authenticate each API request.\nJumpCloud System Context Authorization uses [HTTP Signatures](https://tools.ietf.org/html/draft-cavage-http-signatures-00) to authenticate API requests.\nThe HTTP Signatures sent with each request are similar to the signatures used by the Amazon Web Services REST API.\nTo help with the request-signing process, we have provided an [example bash script](https://github.com/TheJumpCloud/SystemContextAPI/blob/master/examples/shell/SigningExample.sh). This example API request simply requests the entire system record. You must be root, or have permissions to access the contents of the `/opt/jc` directory to generate a signature.\n\nHere is a breakdown of the example script with explanations.\n\nFirst, the script extracts the systemKey from the JSON formatted `/opt/jc/jcagent.conf` file.\n\n```bash\n#!/bin/bash\nconf=\"`cat /opt/jc/jcagent.conf`\"\nregex=\"systemKey\\\":\\\"(\\w+)\\\"\"\n\nif [[ $conf =~ $regex ]] ; then\n systemKey=\"${BASH_REMATCH[1]}\"\nfi\n```\n\nThen, the script retrieves the current date in the correct format.\n\n```bash\nnow=`date -u \"+%a, %d %h %Y %H:%M:%S GMT\"`;\n```\n\nNext, we build a signing string to demonstrate the expected signature format. The signed string must consist of the [request-line](https://tools.ietf.org/html/rfc2616#page-35) and the date header, separated by a newline character.\n\n```bash\nsignstr=\"GET /api/systems/${systemKey} HTTP/1.1\\ndate: ${now}\"\n```\n\nThe next step is to calculate and apply the signature. This is a two-step process:\n\n1. Create a signature from the signing string using the JumpCloud Agent private key: ``printf \"$signstr\" | openssl dgst -sha256 -sign /opt/jc/client.key``\n2. Then Base64-encode the signature string and trim off the newline characters: ``| openssl enc -e -a | tr -d '\\n'``\n\nThe combined steps above result in:\n\n```bash\nsignature=`printf \"$signstr\" | openssl dgst -sha256 -sign /opt/jc/client.key | openssl enc -e -a | tr -d '\\n'` ;\n```\n\nFinally, we make sure the API call sending the signature has the same Authorization and Date header values, HTTP method, and URL that were used in the signing string.\n\n```bash\ncurl -iq \\\n -H \"Accept: application/json\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Date: ${now}\" \\\n -H \"Authorization: Signature keyId=\\\"system/${systemKey}\\\",headers=\\\"request-line date\\\",algorithm=\\\"rsa-sha256\\\",signature=\\\"${signature}\\\"\" \\\n --url https://console.jumpcloud.com/api/systems/${systemKey}\n```\n\n### Input Data\n\nAll PUT and POST methods should use the HTTP Content-Type header with a value of 'application/json'. PUT methods are used for updating a record. POST methods are used to create a record.\n\nThe following example demonstrates how to update the `displayName` of the system.\n\n```bash\nsignstr=\"PUT /api/systems/${systemKey} HTTP/1.1\\ndate: ${now}\"\nsignature=`printf \"$signstr\" | openssl dgst -sha256 -sign /opt/jc/client.key | openssl enc -e -a | tr -d '\\n'` ;\n\ncurl -iq \\\n -d \"{\\\"displayName\\\" : \\\"updated-system-name-1\\\"}\" \\\n -X \"PUT\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Accept: application/json\" \\\n -H \"Date: ${now}\" \\\n -H \"Authorization: Signature keyId=\\\"system/${systemKey}\\\",headers=\\\"request-line date\\\",algorithm=\\\"rsa-sha256\\\",signature=\\\"${signature}\\\"\" \\\n --url https://console.jumpcloud.com/api/systems/${systemKey}\n```\n\n### Output Data\n\nAll results will be formatted as JSON.\n\nHere is an abbreviated example of response output:\n\n```json\n{\n \"_id\": \"525ee96f52e144993e000015\",\n \"agentServer\": \"lappy386\",\n \"agentVersion\": \"0.9.42\",\n \"arch\": \"x86_64\",\n \"connectionKey\": \"127.0.0.1_51812\",\n \"displayName\": \"ubuntu-1204\",\n \"firstContact\": \"2013-10-16T19:30:55.611Z\",\n \"hostname\": \"ubuntu-1204\"\n ...\n```\n\n## Additional Examples\n\n### Signing Authentication Example\n\nThis example demonstrates how to make an authenticated request to fetch the JumpCloud record for this system.\n\n[SigningExample.sh](https://github.com/TheJumpCloud/SystemContextAPI/blob/master/examples/shell/SigningExample.sh)\n\n### Shutdown Hook\n\nThis example demonstrates how to make an authenticated request on system shutdown.\nUsing an init.d script registered at run level 0, you can call the System Context API as the system is shutting down.\n\n[Instance-shutdown-initd](https://github.com/TheJumpCloud/SystemContextAPI/blob/master/examples/instance-shutdown-initd) is an example of an init.d script that only runs at system shutdown.\n\nAfter customizing the [instance-shutdown-initd](https://github.com/TheJumpCloud/SystemContextAPI/blob/master/examples/instance-shutdown-initd) script, you should install it on the system(s) running the JumpCloud agent.\n\n1. Copy the modified [instance-shutdown-initd](https://github.com/TheJumpCloud/SystemContextAPI/blob/master/examples/instance-shutdown-initd) to `/etc/init.d/instance-shutdown`.\n2. On Ubuntu systems, run `update-rc.d instance-shutdown defaults`. On RedHat/CentOS systems, run `chkconfig --add instance-shutdown`.\n\n## Third Party\n\n### Chef Cookbooks\n\n[https://github.com/nshenry03/jumpcloud](https://github.com/nshenry03/jumpcloud)\n\n[https://github.com/cjs226/jumpcloud](https://github.com/cjs226/jumpcloud)\n\n# Multi-Tenant Portal Headers\n\nMulti-Tenant Organization API Headers are available for JumpCloud Admins to use when making API requests from Organizations that have multiple managed organizations.\n\nThe `x-org-id` is a required header for all multi-tenant admins when making API requests to JumpCloud. This header will define to which organization you would like to make the request.\n\n**NOTE** Single Tenant Admins do not need to provide this header when making an API request.\n\n## Header Value\n\n`x-org-id`\n\n## API Response Codes\n\n* `400` Malformed ID.\n* `400` x-org-id and Organization path ID do not match.\n* `401` ID not included for multi-tenant admin\n* `403` ID included on unsupported route.\n* `404` Organization ID Not Found.\n\n```bash\ncurl -X GET https://console.jumpcloud.com/api/v2/directories \\\n -H 'accept: application/json' \\\n -H 'content-type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -H 'x-org-id: {ORG_ID}'\n\n```\n\n## To Obtain an Individual Organization ID via the UI\n\nAs a prerequisite, your Primary Organization will need to be setup for Multi-Tenancy. This provides access to the Multi-Tenant Organization Admin Portal.\n\n1. Log into JumpCloud [Admin Console](https://console.jumpcloud.com). If you are a multi-tenant Admin, you will automatically be routed to the Multi-Tenant Admin Portal.\n2. From the Multi-Tenant Portal's primary navigation bar, select the Organization you'd like to access.\n3. You will automatically be routed to that Organization's Admin Console.\n4. Go to Settings in the sub-tenant's primary navigation.\n5. You can obtain your Organization ID below your Organization's Contact Information on the Settings page.\n\n## To Obtain All Organization IDs via the API\n\n* You can make an API request to this endpoint using the API key of your Primary Organization. `https://console.jumpcloud.com/api/organizations/` This will return all your managed organizations.\n\n```bash\ncurl -X GET \\\n https://console.jumpcloud.com/api/organizations/ \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n```\n\n# SDKs\n\nYou can find language specific SDKs that can help you kickstart your Integration with JumpCloud in the following GitHub repositories:\n\n* [Python](https://github.com/TheJumpCloud/jcapi-python)\n* [Go](https://github.com/TheJumpCloud/jcapi-go)\n* [Ruby](https://github.com/TheJumpCloud/jcapi-ruby)\n* [Java](https://github.com/TheJumpCloud/jcapi-java)\n", "title": "JumpCloud API", "version": "1.0" }, "parameters": { "trait:fields:fields": { "default": "", "description": "Use a space seperated string of field parameters to include the data in the response. If omitted, the default list of fields will be returned.\n", "in": "query", "name": "fields", "type": "string" }, "trait:filter:filter": { "description": "A filter to apply to the query. See the supported operators below. For more complex searches,\nsee the related `/search/<domain>` endpoints,\ne.g. `/search/systems`.\n\n**Filter structure**: `<field>:<operator>:<value>`.\n\n**field** = Populate with a valid field from an endpoint response.\n\n**operator** = Supported operators are:\n- `$eq` (equals)\n- `$ne` (does not equal)\n- `$gt` (is greater than)\n- `$gte` (is greater than or equal to)\n- `$lt` (is less than)\n- `$lte` (is less than or equal to)\n\n_Note: v1 operators differ from v2 operators._\n\n_Note: For v1 operators, excluding the `$` will result in undefined behavior._\n\n**value** = Populate with the value you want to search for. Is case sensitive.\n\n**Examples**\n- `GET /users?filter=username:$eq:testuser`\n- `GET /systemusers?filter=password_expiration_date:$lte:2021-10-24`\n- `GET /systemusers?filter=department:$ne:Accounting`\n- `GET /systems?filter[0]=firstname:$eq:foo&filter[1]=lastname:$eq:bar` - this will\n AND the filters together.\n- `GET /systems?filter[or][0]=lastname:$eq:foo&filter[or][1]=lastname:$eq:bar` - this will\n OR the filters together.", "in": "query", "name": "filter", "type": "string" }, "trait:limit:limit": { "default": 10, "description": "The number of records to return at once. Limited to 100.", "in": "query", "name": "limit", "type": "integer" }, "trait:search:search": { "description": "A nested object containing a `searchTerm` string or array of strings and a list of `fields` to search on.", "in": "query", "name": "search", "type": "string" }, "trait:skip:skip": { "default": 0, "description": "The offset into the records to return.", "in": "query", "minimum": 0, "name": "skip", "type": "integer" }, "trait:sort:sort": { "default": "", "description": "Use space separated sort parameters to sort the collection.\nDefault sort is ascending. Prefix with `-` to sort descending.\n", "in": "query", "name": "sort", "type": "string" } }, "paths": { "/application-templates": { "get": { "description": "The endpoint returns all the SSO / SAML Application Templates.\n\n#### Sample Request\n```\ncurl -X GET https://console.jumpcloud.com/api/application-templates \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n\n```", "operationId": "ApplicationTemplate_List", "parameters": [ { "description": "The space separated fields included in the returned records. If omitted the default list of fields will be returned.", "in": "query", "name": "fields", "type": "string" }, { "description": "The number of records to return at once.", "in": "query", "name": "limit", "type": "integer" }, { "description": "The offset into the records to return.", "in": "query", "name": "skip", "type": "integer" }, { "description": "The space separated fields used to sort the collection. Default sort is ascending, prefix with - to sort descending.", "in": "query", "name": "sort", "type": "string" }, { "$ref": "#/parameters/trait:filter:filter" } ], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/applicationtemplateslist" } } }, "security": [ { "x-api-key": [] } ], "summary": "List Application Templates", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url 'https://console.jumpcloud.com/api/application-templates?fields=SOME_STRING_VALUE&limit=SOME_INTEGER_VALUE&skip=SOME_INTEGER_VALUE&sort=SOME_STRING_VALUE&filter=SOME_STRING_VALUE' \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/application-templates\"\n\nquerystring = {\"fields\":\"SOME_STRING_VALUE\",\"limit\":\"SOME_INTEGER_VALUE\",\"skip\":\"SOME_INTEGER_VALUE\",\"sort\":\"SOME_STRING_VALUE\",\"filter\":\"SOME_STRING_VALUE\"}\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/application-templates?fields=SOME_STRING_VALUE&limit=SOME_INTEGER_VALUE&skip=SOME_INTEGER_VALUE&sort=SOME_STRING_VALUE&filter=SOME_STRING_VALUE' -Method GET -Headers $headers" } ] }, "parameters": [] }, "/application-templates/{id}": { "get": { "description": "The endpoint returns a specific SSO / SAML Application Template.\n\n#### Sample Request\n```\ncurl -X GET https://console.jumpcloud.com/api/application-templates/{id} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n\n```", "operationId": "ApplicationTemplate_Get", "parameters": [ { "description": "The space separated fields included in the returned records. If omitted the default list of fields will be returned.", "in": "query", "name": "fields", "type": "string" }, { "description": "The number of records to return at once.", "in": "query", "name": "limit", "type": "integer" }, { "description": "The offset into the records to return.", "in": "query", "name": "skip", "type": "integer" }, { "description": "The space separated fields used to sort the collection. Default sort is ascending, prefix with - to sort descending.", "in": "query", "name": "sort", "type": "string" }, { "$ref": "#/parameters/trait:filter:filter" } ], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/applicationtemplate" } } }, "security": [ { "x-api-key": [] } ], "summary": "Get an Application Template", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url 'https://console.jumpcloud.com/api/application-templates/{id}?fields=SOME_STRING_VALUE&limit=SOME_INTEGER_VALUE&skip=SOME_INTEGER_VALUE&sort=SOME_STRING_VALUE&filter=SOME_STRING_VALUE' \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/application-templates/{id}\"\n\nquerystring = {\"fields\":\"SOME_STRING_VALUE\",\"limit\":\"SOME_INTEGER_VALUE\",\"skip\":\"SOME_INTEGER_VALUE\",\"sort\":\"SOME_STRING_VALUE\",\"filter\":\"SOME_STRING_VALUE\"}\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/application-templates/{id}?fields=SOME_STRING_VALUE&limit=SOME_INTEGER_VALUE&skip=SOME_INTEGER_VALUE&sort=SOME_STRING_VALUE&filter=SOME_STRING_VALUE' -Method GET -Headers $headers" } ] }, "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ] }, "/applications": { "get": { "description": "The endpoint returns all your SSO / SAML Applications.\n\n#### Sample Request\n```\ncurl -X GET https://console.jumpcloud.com/api/applications \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n\n```", "operationId": "Application_List", "parameters": [ { "description": "The space separated fields included in the returned records. If omitted the default list of fields will be returned.", "in": "query", "name": "fields", "type": "string" }, { "description": "The number of records to return at once.", "in": "query", "name": "limit", "type": "integer" }, { "description": "The offset into the records to return.", "in": "query", "name": "skip", "type": "integer" }, { "default": "name", "description": "The space separated fields used to sort the collection. Default sort is ascending, prefix with - to sort descending.", "in": "query", "name": "sort", "type": "string" }, { "$ref": "#/parameters/trait:filter:filter" } ], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/applicationslist" } } }, "security": [ { "x-api-key": [] } ], "summary": "Applications", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url 'https://console.jumpcloud.com/api/applications?fields=SOME_STRING_VALUE&limit=SOME_INTEGER_VALUE&skip=SOME_INTEGER_VALUE&sort=name&filter=SOME_STRING_VALUE' \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/applications\"\n\nquerystring = {\"fields\":\"SOME_STRING_VALUE\",\"limit\":\"SOME_INTEGER_VALUE\",\"skip\":\"SOME_INTEGER_VALUE\",\"sort\":\"name\",\"filter\":\"SOME_STRING_VALUE\"}\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/applications?fields=SOME_STRING_VALUE&limit=SOME_INTEGER_VALUE&skip=SOME_INTEGER_VALUE&sort=name&filter=SOME_STRING_VALUE' -Method GET -Headers $headers" } ] }, "post": { "description": "The endpoint adds a new SSO / SAML Applications.", "operationId": "Application_Create", "parameters": [ { "in": "body", "name": "body", "schema": { "$ref": "#/definitions/application" } } ], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/application" } } }, "security": [ { "x-api-key": [] } ], "summary": "Create an Application", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url https://console.jumpcloud.com/api/applications \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"_id\":\"string\",\"active\":true,\"beta\":true,\"color\":\"\",\"config\":{\"acsUrl\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true},\"constantAttributes\":{\"label\":\"string\",\"mutable\":true,\"options\":null,\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":null,\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":[{\"name\":\"string\",\"readOnly\":true,\"required\":true,\"value\":\"string\",\"visible\":true}],\"visible\":true},\"databaseAttributes\":{\"position\":0},\"idpCertificate\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true},\"idpEntityId\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true},\"idpPrivateKey\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true},\"spEntityId\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true}},\"created\":\"string\",\"databaseAttributes\":[{}],\"description\":\"string\",\"displayLabel\":\"string\",\"displayName\":\"string\",\"learnMore\":\"string\",\"logo\":{\"color\":\"\",\"url\":\"string\"},\"name\":\"string\",\"organization\":\"string\",\"sso\":{\"beta\":true,\"idpCertExpirationAt\":\"2019-08-24T14:15:22Z\",\"jit\":true,\"type\":\"string\"},\"ssoUrl\":\"string\"}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/applications\"\n\npayload = {\n \"_id\": \"string\",\n \"active\": True,\n \"beta\": True,\n \"color\": \"\",\n \"config\": {\n \"acsUrl\": {\n \"label\": \"string\",\n \"options\": \"string\",\n \"position\": 0,\n \"readOnly\": True,\n \"required\": True,\n \"toggle\": \"string\",\n \"tooltip\": {\n \"template\": \"string\",\n \"variables\": {\n \"icon\": \"string\",\n \"message\": \"string\"\n }\n },\n \"type\": \"string\",\n \"value\": \"string\",\n \"visible\": True\n },\n \"constantAttributes\": {\n \"label\": \"string\",\n \"mutable\": True,\n \"options\": None,\n \"position\": 0,\n \"readOnly\": True,\n \"required\": True,\n \"toggle\": None,\n \"tooltip\": {\n \"template\": \"string\",\n \"variables\": {\n \"icon\": \"string\",\n \"message\": \"string\"\n }\n },\n \"type\": \"string\",\n \"value\": [\n {\n \"name\": \"string\",\n \"readOnly\": True,\n \"required\": True,\n \"value\": \"string\",\n \"visible\": True\n }\n ],\n \"visible\": True\n },\n \"databaseAttributes\": {\"position\": 0},\n \"idpCertificate\": {\n \"label\": \"string\",\n \"options\": \"string\",\n \"position\": 0,\n \"readOnly\": True,\n \"required\": True,\n \"toggle\": \"string\",\n \"tooltip\": {\n \"template\": \"string\",\n \"variables\": {\n \"icon\": \"string\",\n \"message\": \"string\"\n }\n },\n \"type\": \"string\",\n \"value\": \"string\",\n \"visible\": True\n },\n \"idpEntityId\": {\n \"label\": \"string\",\n \"options\": \"string\",\n \"position\": 0,\n \"readOnly\": True,\n \"required\": True,\n \"toggle\": \"string\",\n \"tooltip\": {\n \"template\": \"string\",\n \"variables\": {\n \"icon\": \"string\",\n \"message\": \"string\"\n }\n },\n \"type\": \"string\",\n \"value\": \"string\",\n \"visible\": True\n },\n \"idpPrivateKey\": {\n \"label\": \"string\",\n \"options\": \"string\",\n \"position\": 0,\n \"readOnly\": True,\n \"required\": True,\n \"toggle\": \"string\",\n \"tooltip\": {\n \"template\": \"string\",\n \"variables\": {\n \"icon\": \"string\",\n \"message\": \"string\"\n }\n },\n \"type\": \"string\",\n \"value\": \"string\",\n \"visible\": True\n },\n \"spEntityId\": {\n \"label\": \"string\",\n \"options\": \"string\",\n \"position\": 0,\n \"readOnly\": True,\n \"required\": True,\n \"toggle\": \"string\",\n \"tooltip\": {\n \"template\": \"string\",\n \"variables\": {\n \"icon\": \"string\",\n \"message\": \"string\"\n }\n },\n \"type\": \"string\",\n \"value\": \"string\",\n \"visible\": True\n }\n },\n \"created\": \"string\",\n \"databaseAttributes\": [{}],\n \"description\": \"string\",\n \"displayLabel\": \"string\",\n \"displayName\": \"string\",\n \"learnMore\": \"string\",\n \"logo\": {\n \"color\": \"\",\n \"url\": \"string\"\n },\n \"name\": \"string\",\n \"organization\": \"string\",\n \"sso\": {\n \"beta\": True,\n \"idpCertExpirationAt\": \"2019-08-24T14:15:22Z\",\n \"jit\": True,\n \"type\": \"string\"\n },\n \"ssoUrl\": \"string\"\n}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"POST\", url, json=payload, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/applications' -Method POST -Headers $headers -ContentType 'application/json' -Body '{\"_id\":\"string\",\"active\":true,\"beta\":true,\"color\":\"\",\"config\":{\"acsUrl\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true},\"constantAttributes\":{\"label\":\"string\",\"mutable\":true,\"options\":null,\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":null,\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":[{\"name\":\"string\",\"readOnly\":true,\"required\":true,\"value\":\"string\",\"visible\":true}],\"visible\":true},\"databaseAttributes\":{\"position\":0},\"idpCertificate\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true},\"idpEntityId\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true},\"idpPrivateKey\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true},\"spEntityId\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true}},\"created\":\"string\",\"databaseAttributes\":[{}],\"description\":\"string\",\"displayLabel\":\"string\",\"displayName\":\"string\",\"learnMore\":\"string\",\"logo\":{\"color\":\"\",\"url\":\"string\"},\"name\":\"string\",\"organization\":\"string\",\"sso\":{\"beta\":true,\"idpCertExpirationAt\":\"2019-08-24T14:15:22Z\",\"jit\":true,\"type\":\"string\"},\"ssoUrl\":\"string\"}'" } ] } }, "/applications/{id}": { "delete": { "description": "The endpoint deletes an SSO / SAML Application.", "operationId": "Application_Delete", "parameters": [], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/application" } } }, "security": [ { "x-api-key": [] } ], "summary": "Delete an Application", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request DELETE \\\n --url https://console.jumpcloud.com/api/applications/{id} \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/applications/{id}\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"DELETE\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/applications/{id}' -Method DELETE -Headers $headers" } ] }, "get": { "description": "The endpoint retrieves an SSO / SAML Application.", "operationId": "Application_Get", "parameters": [], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/application" } } }, "security": [ { "x-api-key": [] } ], "summary": "Get an Application", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url https://console.jumpcloud.com/api/applications/{id} \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/applications/{id}\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/applications/{id}' -Method GET -Headers $headers" } ] }, "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ], "put": { "description": "The endpoint updates a SSO / SAML Application.", "operationId": "Application_Set", "parameters": [ { "in": "body", "name": "body", "schema": { "$ref": "#/definitions/application" } } ], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/application" } } }, "security": [ { "x-api-key": [] } ], "summary": "Update an Application", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request PUT \\\n --url https://console.jumpcloud.com/api/applications/{id} \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"_id\":\"string\",\"active\":true,\"beta\":true,\"color\":\"\",\"config\":{\"acsUrl\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true},\"constantAttributes\":{\"label\":\"string\",\"mutable\":true,\"options\":null,\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":null,\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":[{\"name\":\"string\",\"readOnly\":true,\"required\":true,\"value\":\"string\",\"visible\":true}],\"visible\":true},\"databaseAttributes\":{\"position\":0},\"idpCertificate\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true},\"idpEntityId\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true},\"idpPrivateKey\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true},\"spEntityId\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true}},\"created\":\"string\",\"databaseAttributes\":[{}],\"description\":\"string\",\"displayLabel\":\"string\",\"displayName\":\"string\",\"learnMore\":\"string\",\"logo\":{\"color\":\"\",\"url\":\"string\"},\"name\":\"string\",\"organization\":\"string\",\"sso\":{\"beta\":true,\"idpCertExpirationAt\":\"2019-08-24T14:15:22Z\",\"jit\":true,\"type\":\"string\"},\"ssoUrl\":\"string\"}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/applications/{id}\"\n\npayload = {\n \"_id\": \"string\",\n \"active\": True,\n \"beta\": True,\n \"color\": \"\",\n \"config\": {\n \"acsUrl\": {\n \"label\": \"string\",\n \"options\": \"string\",\n \"position\": 0,\n \"readOnly\": True,\n \"required\": True,\n \"toggle\": \"string\",\n \"tooltip\": {\n \"template\": \"string\",\n \"variables\": {\n \"icon\": \"string\",\n \"message\": \"string\"\n }\n },\n \"type\": \"string\",\n \"value\": \"string\",\n \"visible\": True\n },\n \"constantAttributes\": {\n \"label\": \"string\",\n \"mutable\": True,\n \"options\": None,\n \"position\": 0,\n \"readOnly\": True,\n \"required\": True,\n \"toggle\": None,\n \"tooltip\": {\n \"template\": \"string\",\n \"variables\": {\n \"icon\": \"string\",\n \"message\": \"string\"\n }\n },\n \"type\": \"string\",\n \"value\": [\n {\n \"name\": \"string\",\n \"readOnly\": True,\n \"required\": True,\n \"value\": \"string\",\n \"visible\": True\n }\n ],\n \"visible\": True\n },\n \"databaseAttributes\": {\"position\": 0},\n \"idpCertificate\": {\n \"label\": \"string\",\n \"options\": \"string\",\n \"position\": 0,\n \"readOnly\": True,\n \"required\": True,\n \"toggle\": \"string\",\n \"tooltip\": {\n \"template\": \"string\",\n \"variables\": {\n \"icon\": \"string\",\n \"message\": \"string\"\n }\n },\n \"type\": \"string\",\n \"value\": \"string\",\n \"visible\": True\n },\n \"idpEntityId\": {\n \"label\": \"string\",\n \"options\": \"string\",\n \"position\": 0,\n \"readOnly\": True,\n \"required\": True,\n \"toggle\": \"string\",\n \"tooltip\": {\n \"template\": \"string\",\n \"variables\": {\n \"icon\": \"string\",\n \"message\": \"string\"\n }\n },\n \"type\": \"string\",\n \"value\": \"string\",\n \"visible\": True\n },\n \"idpPrivateKey\": {\n \"label\": \"string\",\n \"options\": \"string\",\n \"position\": 0,\n \"readOnly\": True,\n \"required\": True,\n \"toggle\": \"string\",\n \"tooltip\": {\n \"template\": \"string\",\n \"variables\": {\n \"icon\": \"string\",\n \"message\": \"string\"\n }\n },\n \"type\": \"string\",\n \"value\": \"string\",\n \"visible\": True\n },\n \"spEntityId\": {\n \"label\": \"string\",\n \"options\": \"string\",\n \"position\": 0,\n \"readOnly\": True,\n \"required\": True,\n \"toggle\": \"string\",\n \"tooltip\": {\n \"template\": \"string\",\n \"variables\": {\n \"icon\": \"string\",\n \"message\": \"string\"\n }\n },\n \"type\": \"string\",\n \"value\": \"string\",\n \"visible\": True\n }\n },\n \"created\": \"string\",\n \"databaseAttributes\": [{}],\n \"description\": \"string\",\n \"displayLabel\": \"string\",\n \"displayName\": \"string\",\n \"learnMore\": \"string\",\n \"logo\": {\n \"color\": \"\",\n \"url\": \"string\"\n },\n \"name\": \"string\",\n \"organization\": \"string\",\n \"sso\": {\n \"beta\": True,\n \"idpCertExpirationAt\": \"2019-08-24T14:15:22Z\",\n \"jit\": True,\n \"type\": \"string\"\n },\n \"ssoUrl\": \"string\"\n}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"PUT\", url, json=payload, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/applications/{id}' -Method PUT -Headers $headers -ContentType 'application/json' -Body '{\"_id\":\"string\",\"active\":true,\"beta\":true,\"color\":\"\",\"config\":{\"acsUrl\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true},\"constantAttributes\":{\"label\":\"string\",\"mutable\":true,\"options\":null,\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":null,\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":[{\"name\":\"string\",\"readOnly\":true,\"required\":true,\"value\":\"string\",\"visible\":true}],\"visible\":true},\"databaseAttributes\":{\"position\":0},\"idpCertificate\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true},\"idpEntityId\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true},\"idpPrivateKey\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true},\"spEntityId\":{\"label\":\"string\",\"options\":\"string\",\"position\":0,\"readOnly\":true,\"required\":true,\"toggle\":\"string\",\"tooltip\":{\"template\":\"string\",\"variables\":{\"icon\":\"string\",\"message\":\"string\"}},\"type\":\"string\",\"value\":\"string\",\"visible\":true}},\"created\":\"string\",\"databaseAttributes\":[{}],\"description\":\"string\",\"displayLabel\":\"string\",\"displayName\":\"string\",\"learnMore\":\"string\",\"logo\":{\"color\":\"\",\"url\":\"string\"},\"name\":\"string\",\"organization\":\"string\",\"sso\":{\"beta\":true,\"idpCertExpirationAt\":\"2019-08-24T14:15:22Z\",\"jit\":true,\"type\":\"string\"},\"ssoUrl\":\"string\"}'" } ] } }, "/command/trigger/{triggername}": { "parameters": [ { "in": "path", "name": "triggername", "required": true, "type": "string" } ], "post": { "description": "This endpoint allows you to launch a command based on a defined trigger.\n\n#### Sample Requests\n\n**Launch a Command via a Trigger**\n\n```\ncurl --silent \\\n -X 'POST' \\\n -H \"x-api-key: {API_KEY}\" \\\n \"https://console.jumpcloud.com/api/command/trigger/{TriggerName}\"\n```\n**Launch a Command via a Trigger passing a JSON object to the command**\n```\ncurl --silent \\\n -X 'POST' \\\n -H \"x-api-key: {API_KEY}\" \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -d '{ \"srcip\":\"192.168.2.32\", \"attack\":\"Cross Site Scripting Attempt\" }' \\\n \"https://console.jumpcloud.com/api/command/trigger/{TriggerName}\"\n```", "operationId": "CommandTrigger_POST", "parameters": [], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/triggerreturn" } } }, "security": [ { "x-api-key": [] } ], "summary": "Launch a command via a Trigger", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url https://console.jumpcloud.com/api/command/trigger/{triggername} \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/command/trigger/{triggername}\"\n\npayload = {}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"POST\", url, json=payload, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/command/trigger/{triggername}' -Method POST -Headers $headers -ContentType 'application/json' -Body '{}'" } ] } }, "/commandresults": { "get": { "description": "This endpoint returns all command results.\n\n#### Sample Request\n```\ncurl -X GET https://console.jumpcloud.com/api/commandresults \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key:{API_KEY}'\n ```", "operationId": "CommandResult_List", "parameters": [ { "$ref": "#/parameters/trait:fields:fields" }, { "$ref": "#/parameters/trait:filter:filter" }, { "$ref": "#/parameters/trait:limit:limit" }, { "$ref": "#/parameters/trait:skip:skip" }, { "$ref": "#/parameters/trait:sort:sort" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/commandresultslist" } } }, "security": [ { "x-api-key": [] } ], "summary": "List all Command Results", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url 'https://console.jumpcloud.com/api/commandresults?fields=&filter=SOME_STRING_VALUE&limit=10&skip=0&sort=' \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/commandresults\"\n\nquerystring = {\"fields\":\"\",\"filter\":\"SOME_STRING_VALUE\",\"limit\":\"10\",\"skip\":\"0\",\"sort\":\"\"}\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/commandresults?fields=&filter=SOME_STRING_VALUE&limit=10&skip=0&sort=' -Method GET -Headers $headers" } ] } }, "/commandresults/{id}": { "delete": { "description": "This endpoint deletes a specific command result.\n\n#### Sample Request\n```\ncurl -X GET https://console.jumpcloud.com/api/commandresults/{CommandID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n ````", "operationId": "CommandResult_Delete", "parameters": [], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/commandresult" } } }, "security": [ { "x-api-key": [] } ], "summary": "Delete a Command result", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request DELETE \\\n --url https://console.jumpcloud.com/api/commandresults/{id} \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/commandresults/{id}\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"DELETE\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/commandresults/{id}' -Method DELETE -Headers $headers" } ] }, "get": { "description": "This endpoint returns a specific command result.\n\n#### Sample Request\n```\ncurl -X GET https://console.jumpcloud.com/api/commandresults/{CommandResultID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n ```", "operationId": "CommandResult_Get", "parameters": [ { "$ref": "#/parameters/trait:fields:fields" }, { "$ref": "#/parameters/trait:filter:filter" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/commandresult" } } }, "security": [ { "x-api-key": [] } ], "summary": "List an individual Command result", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url 'https://console.jumpcloud.com/api/commandresults/{id}?fields=&filter=SOME_STRING_VALUE' \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/commandresults/{id}\"\n\nquerystring = {\"fields\":\"\",\"filter\":\"SOME_STRING_VALUE\"}\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/commandresults/{id}?fields=&filter=SOME_STRING_VALUE' -Method GET -Headers $headers" } ] }, "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ] }, "/commands": { "get": { "description": "This endpoint returns all commands.\n\n#### Sample Request\n```\ncurl -X GET https://console.jumpcloud.com/api/commands/ \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n\n```", "operationId": "Command_List", "parameters": [ { "$ref": "#/parameters/trait:fields:fields" }, { "$ref": "#/parameters/trait:filter:filter" }, { "$ref": "#/parameters/trait:limit:limit" }, { "$ref": "#/parameters/trait:skip:skip" }, { "$ref": "#/parameters/trait:sort:sort" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/commandslist" } } }, "security": [ { "x-api-key": [] } ], "summary": "List All Commands", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url 'https://console.jumpcloud.com/api/commands?fields=&filter=SOME_STRING_VALUE&limit=10&skip=0&sort=' \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/commands\"\n\nquerystring = {\"fields\":\"\",\"filter\":\"SOME_STRING_VALUE\",\"limit\":\"10\",\"skip\":\"0\",\"sort\":\"\"}\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/commands?fields=&filter=SOME_STRING_VALUE&limit=10&skip=0&sort=' -Method GET -Headers $headers" } ] }, "post": { "description": "This endpoint allows you to create a new command.\n\n#### Sample Request\n\n```\ncurl -X POST https://console.jumpcloud.com/api/commands/ \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n\t\"name\":\"Test API Command\",\n\t\"command\":\"String\",\n\t\"user\":\"{UserID}\",\n\t\"schedule\":\"\",\n\t\"timeout\":\"100\"\n}'\n\n```", "operationId": "Command_Create", "parameters": [ { "in": "body", "name": "body", "schema": { "$ref": "#/definitions/command" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/command" } } }, "security": [ { "x-api-key": [] } ], "summary": "Create A Command", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url https://console.jumpcloud.com/api/commands \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"command\":\"string\",\"commandRunners\":[\"string\"],\"commandType\":\"linux\",\"files\":[\"string\"],\"launchType\":\"string\",\"listensTo\":\"string\",\"name\":\"string\",\"organization\":\"string\",\"schedule\":\"string\",\"scheduleRepeatType\":\"string\",\"shell\":\"string\",\"sudo\":true,\"systems\":[\"string\"],\"timeToLiveSeconds\":0,\"timeout\":\"string\",\"trigger\":\"string\",\"user\":\"string\"}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/commands\"\n\npayload = {\n \"command\": \"string\",\n \"commandRunners\": [\"string\"],\n \"commandType\": \"linux\",\n \"files\": [\"string\"],\n \"launchType\": \"string\",\n \"listensTo\": \"string\",\n \"name\": \"string\",\n \"organization\": \"string\",\n \"schedule\": \"string\",\n \"scheduleRepeatType\": \"string\",\n \"shell\": \"string\",\n \"sudo\": True,\n \"systems\": [\"string\"],\n \"timeToLiveSeconds\": 0,\n \"timeout\": \"string\",\n \"trigger\": \"string\",\n \"user\": \"string\"\n}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"POST\", url, json=payload, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/commands' -Method POST -Headers $headers -ContentType 'application/json' -Body '{\"command\":\"string\",\"commandRunners\":[\"string\"],\"commandType\":\"linux\",\"files\":[\"string\"],\"launchType\":\"string\",\"listensTo\":\"string\",\"name\":\"string\",\"organization\":\"string\",\"schedule\":\"string\",\"scheduleRepeatType\":\"string\",\"shell\":\"string\",\"sudo\":true,\"systems\":[\"string\"],\"timeToLiveSeconds\":0,\"timeout\":\"string\",\"trigger\":\"string\",\"user\":\"string\"}'" } ] } }, "/commands/{id}": { "delete": { "description": "This endpoint deletes a specific command based on the Command ID.\n\n#### Sample Request\n```\ncurl -X DELETE https://console.jumpcloud.com/api/commands/{CommandID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n\n```", "operationId": "Command_Delete", "parameters": [], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/command" } } }, "security": [ { "x-api-key": [] } ], "summary": "Delete a Command", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request DELETE \\\n --url https://console.jumpcloud.com/api/commands/{id} \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/commands/{id}\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"DELETE\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/commands/{id}' -Method DELETE -Headers $headers" } ] }, "get": { "description": "This endpoint returns a specific command based on the command ID.\n\n#### Sample Request\n```\ncurl -X GET https://console.jumpcloud.com/api/commands/{CommandID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n```", "operationId": "Command_Get", "parameters": [ { "$ref": "#/parameters/trait:fields:fields" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/command" } } }, "security": [ { "x-api-key": [] } ], "summary": "List an individual Command", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url 'https://console.jumpcloud.com/api/commands/{id}?fields=' \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/commands/{id}\"\n\nquerystring = {\"fields\":\"\"}\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/commands/{id}?fields=' -Method GET -Headers $headers" } ] }, "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ], "put": { "description": "This endpoint Updates a command based on the command ID and returns the modified command record.\n\n#### Sample Request\n```\ncurl -X PUT https://console.jumpcloud.com/api/commands/{CommandID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n\t\"name\":\"Test API Command\",\n\t\"command\":\"String\",\n\t\"user\":\"{UserID}\",\n\t\"schedule\":\"\",\n\t\"timeout\":\"100\"\n}'\n\n```", "operationId": "Command_Set", "parameters": [ { "in": "body", "name": "body", "schema": { "$ref": "#/definitions/command" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/command" } } }, "security": [ { "x-api-key": [] } ], "summary": "Update a Command", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request PUT \\\n --url https://console.jumpcloud.com/api/commands/{id} \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"command\":\"string\",\"commandRunners\":[\"string\"],\"commandType\":\"linux\",\"files\":[\"string\"],\"launchType\":\"string\",\"listensTo\":\"string\",\"name\":\"string\",\"organization\":\"string\",\"schedule\":\"string\",\"scheduleRepeatType\":\"string\",\"shell\":\"string\",\"sudo\":true,\"systems\":[\"string\"],\"timeToLiveSeconds\":0,\"timeout\":\"string\",\"trigger\":\"string\",\"user\":\"string\"}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/commands/{id}\"\n\npayload = {\n \"command\": \"string\",\n \"commandRunners\": [\"string\"],\n \"commandType\": \"linux\",\n \"files\": [\"string\"],\n \"launchType\": \"string\",\n \"listensTo\": \"string\",\n \"name\": \"string\",\n \"organization\": \"string\",\n \"schedule\": \"string\",\n \"scheduleRepeatType\": \"string\",\n \"shell\": \"string\",\n \"sudo\": True,\n \"systems\": [\"string\"],\n \"timeToLiveSeconds\": 0,\n \"timeout\": \"string\",\n \"trigger\": \"string\",\n \"user\": \"string\"\n}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"PUT\", url, json=payload, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/commands/{id}' -Method PUT -Headers $headers -ContentType 'application/json' -Body '{\"command\":\"string\",\"commandRunners\":[\"string\"],\"commandType\":\"linux\",\"files\":[\"string\"],\"launchType\":\"string\",\"listensTo\":\"string\",\"name\":\"string\",\"organization\":\"string\",\"schedule\":\"string\",\"scheduleRepeatType\":\"string\",\"shell\":\"string\",\"sudo\":true,\"systems\":[\"string\"],\"timeToLiveSeconds\":0,\"timeout\":\"string\",\"trigger\":\"string\",\"user\":\"string\"}'" } ] } }, "/commands/{id}/results": { "get": { "description": "This endpoint returns results for a specific command.\n\n#### Sample Request\n```\ncurl -X GET https://console.jumpcloud.com/api/commands/{id}/results \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n ````", "operationId": "CommandResult_Get", "responses": { "200": { "description": "OK", "schema": { "items": { "$ref": "#/definitions/commandresult" }, "type": "array" } } }, "security": [ { "x-api-key": [] } ], "summary": "Get results for a specific command", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url https://console.jumpcloud.com/api/commands/{id}/results \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/commands/{id}/results\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/commands/{id}/results' -Method GET -Headers $headers" } ] }, "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ] }, "/files/command/{id}": { "get": { "description": "This endpoint returns the uploaded file(s) associated with a specific command.\n\n#### Sample Request\n\n```\ncurl -X GET https://console.jumpcloud.com/api/files/command/{commandID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n ```", "operationId": "CommandFile_Get", "parameters": [ { "$ref": "#/parameters/trait:fields:fields" }, { "$ref": "#/parameters/trait:limit:limit" }, { "$ref": "#/parameters/trait:skip:skip" } ], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/commandfilereturn" } } }, "security": [ { "x-api-key": [] } ], "summary": "Get a Command File", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url 'https://console.jumpcloud.com/api/files/command/{id}?fields=&limit=10&skip=0' \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/files/command/{id}\"\n\nquerystring = {\"fields\":\"\",\"limit\":\"10\",\"skip\":\"0\"}\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/files/command/{id}?fields=&limit=10&skip=0' -Method GET -Headers $headers" } ] }, "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ] }, "/organizations": { "get": { "description": "This endpoint returns Organization Details.\n\n#### Sample Request\n\n```\ncurl -X GET \\\n https://console.jumpcloud.com/api/organizations \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n ```", "operationId": "Organization_List", "parameters": [ { "$ref": "#/parameters/trait:fields:fields" }, { "$ref": "#/parameters/trait:filter:filter" }, { "$ref": "#/parameters/trait:limit:limit" }, { "$ref": "#/parameters/trait:search:search" }, { "$ref": "#/parameters/trait:skip:skip" }, { "$ref": "#/parameters/trait:sort:sort" } ], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/organizationslist" } } }, "security": [ { "x-api-key": [] } ], "summary": "Get Organization Details", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url 'https://console.jumpcloud.com/api/organizations?fields=&filter=SOME_STRING_VALUE&limit=10&search=SOME_STRING_VALUE&skip=0&sort=' \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/organizations\"\n\nquerystring = {\"fields\":\"\",\"filter\":\"SOME_STRING_VALUE\",\"limit\":\"10\",\"search\":\"SOME_STRING_VALUE\",\"skip\":\"0\",\"sort\":\"\"}\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/organizations?fields=&filter=SOME_STRING_VALUE&limit=10&search=SOME_STRING_VALUE&skip=0&sort=' -Method GET -Headers $headers" } ] } }, "/organizations/{id}": { "get": { "description": "This endpoint returns a particular Organization.\n\n#### Sample Request\n\n```\ncurl -X GET https://console.jumpcloud.com/api/organizations/{OrganizationID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n```", "operationId": "Organization_Get", "parameters": [ { "$ref": "#/parameters/trait:fields:fields" }, { "$ref": "#/parameters/trait:filter:filter" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/organization" } } }, "security": [ { "x-api-key": [] } ], "summary": "Get an Organization", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url 'https://console.jumpcloud.com/api/organizations/{id}?fields=&filter=SOME_STRING_VALUE' \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/organizations/{id}\"\n\nquerystring = {\"fields\":\"\",\"filter\":\"SOME_STRING_VALUE\"}\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/organizations/{id}?fields=&filter=SOME_STRING_VALUE' -Method GET -Headers $headers" } ] }, "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ], "put": { "description": "This endpoint allows you to update an Organization.\n\nNote: `passwordPolicy` settings are only used when `passwordCompliance` is set to \"custom\". We discourage the use of non-custom passwordCompliance values.\n\n`hasStripeCustomerId` is deprecated and will be removed.\n\n#### Sample Request\n\n```\ncurl -X PUT https://console.jumpcloud.com/api/organizations/{OrganizationID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n \"settings\": {\n \"contactName\": \"Admin Name\",\n \"contactEmail\": \"admin@company.com\",\n \"systemUsersCanEdit\":true,\n \"passwordPolicy\": {\n \"enableMaxHistory\": true,\n \"maxHistory\": 3\n }\n }\n}'\n```", "operationId": "Organization_Set", "parameters": [ { "in": "body", "name": "body", "schema": { "properties": { "settings": { "$ref": "#/definitions/organizationsettingsput" } }, "type": "object" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/organization" } } }, "security": [ { "x-api-key": [] } ], "summary": "Update an Organization", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request PUT \\\n --url https://console.jumpcloud.com/api/organizations/{id} \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"settings\":{\"contactEmail\":\"string\",\"contactName\":\"string\",\"deviceIdentificationEnabled\":true,\"disableGoogleLogin\":true,\"disableLdap\":true,\"disableUM\":true,\"duplicateLDAPGroups\":true,\"emailDisclaimer\":\"string\",\"enableManagedUID\":true,\"features\":{\"directoryInsights\":{\"enabled\":true},\"directoryInsightsPremium\":{\"createdAt\":\"string\",\"enabled\":true,\"updatedAt\":\"string\"},\"systemInsights\":{\"createdAt\":\"string\",\"enableNewDarwin\":true,\"enableNewLinux\":true,\"enableNewWindows\":true,\"enabled\":true,\"updatedAt\":\"string\"}},\"growthData\":{},\"logo\":\"string\",\"name\":\"string\",\"newSystemUserStateDefaults\":{\"applicationImport\":\"ACTIVATED\",\"csvImport\":\"ACTIVATED\",\"manualEntry\":\"ACTIVATED\"},\"passwordCompliance\":\"custom\",\"passwordPolicy\":{\"allowUsernameSubstring\":true,\"daysAfterExpirationToSelfRecover\":0,\"daysBeforeExpirationToForceReset\":1,\"effectiveDate\":\"string\",\"enableDaysAfterExpirationToSelfRecover\":true,\"enableDaysBeforeExpirationToForceReset\":true,\"enableLockoutTimeInSeconds\":true,\"enableMaxHistory\":true,\"enableMaxLoginAttempts\":true,\"enableMinChangePeriodInDays\":true,\"enableMinLength\":true,\"enablePasswordExpirationInDays\":true,\"gracePeriodDate\":\"string\",\"lockoutTimeInSeconds\":0,\"maxHistory\":1,\"maxLoginAttempts\":1,\"minChangePeriodInDays\":0,\"minLength\":0,\"needsLowercase\":true,\"needsNumeric\":true,\"needsSymbolic\":true,\"needsUppercase\":true,\"passwordExpirationInDays\":1},\"showIntro\":true,\"systemUserPasswordExpirationInDays\":0,\"systemUsersCanEdit\":true,\"systemUsersCap\":0,\"trustedAppConfig\":{\"trustedApps\":[{\"name\":\"Application 1\",\"path\":\"/someuser/Applications/application1.app\",\"teamid\":\"FakeTeamID\"}]},\"userPortal\":{\"idleSessionDurationMinutes\":1}}}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/organizations/{id}\"\n\npayload = {\"settings\": {\n \"contactEmail\": \"string\",\n \"contactName\": \"string\",\n \"deviceIdentificationEnabled\": True,\n \"disableGoogleLogin\": True,\n \"disableLdap\": True,\n \"disableUM\": True,\n \"duplicateLDAPGroups\": True,\n \"emailDisclaimer\": \"string\",\n \"enableManagedUID\": True,\n \"features\": {\n \"directoryInsights\": {\"enabled\": True},\n \"directoryInsightsPremium\": {\n \"createdAt\": \"string\",\n \"enabled\": True,\n \"updatedAt\": \"string\"\n },\n \"systemInsights\": {\n \"createdAt\": \"string\",\n \"enableNewDarwin\": True,\n \"enableNewLinux\": True,\n \"enableNewWindows\": True,\n \"enabled\": True,\n \"updatedAt\": \"string\"\n }\n },\n \"growthData\": {},\n \"logo\": \"string\",\n \"name\": \"string\",\n \"newSystemUserStateDefaults\": {\n \"applicationImport\": \"ACTIVATED\",\n \"csvImport\": \"ACTIVATED\",\n \"manualEntry\": \"ACTIVATED\"\n },\n \"passwordCompliance\": \"custom\",\n \"passwordPolicy\": {\n \"allowUsernameSubstring\": True,\n \"daysAfterExpirationToSelfRecover\": 0,\n \"daysBeforeExpirationToForceReset\": 1,\n \"effectiveDate\": \"string\",\n \"enableDaysAfterExpirationToSelfRecover\": True,\n \"enableDaysBeforeExpirationToForceReset\": True,\n \"enableLockoutTimeInSeconds\": True,\n \"enableMaxHistory\": True,\n \"enableMaxLoginAttempts\": True,\n \"enableMinChangePeriodInDays\": True,\n \"enableMinLength\": True,\n \"enablePasswordExpirationInDays\": True,\n \"gracePeriodDate\": \"string\",\n \"lockoutTimeInSeconds\": 0,\n \"maxHistory\": 1,\n \"maxLoginAttempts\": 1,\n \"minChangePeriodInDays\": 0,\n \"minLength\": 0,\n \"needsLowercase\": True,\n \"needsNumeric\": True,\n \"needsSymbolic\": True,\n \"needsUppercase\": True,\n \"passwordExpirationInDays\": 1\n },\n \"showIntro\": True,\n \"systemUserPasswordExpirationInDays\": 0,\n \"systemUsersCanEdit\": True,\n \"systemUsersCap\": 0,\n \"trustedAppConfig\": {\"trustedApps\": [\n {\n \"name\": \"Application 1\",\n \"path\": \"/someuser/Applications/application1.app\",\n \"teamid\": \"FakeTeamID\"\n }\n ]},\n \"userPortal\": {\"idleSessionDurationMinutes\": 1}\n }}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"PUT\", url, json=payload, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/organizations/{id}' -Method PUT -Headers $headers -ContentType 'application/json' -Body '{\"settings\":{\"contactEmail\":\"string\",\"contactName\":\"string\",\"deviceIdentificationEnabled\":true,\"disableGoogleLogin\":true,\"disableLdap\":true,\"disableUM\":true,\"duplicateLDAPGroups\":true,\"emailDisclaimer\":\"string\",\"enableManagedUID\":true,\"features\":{\"directoryInsights\":{\"enabled\":true},\"directoryInsightsPremium\":{\"createdAt\":\"string\",\"enabled\":true,\"updatedAt\":\"string\"},\"systemInsights\":{\"createdAt\":\"string\",\"enableNewDarwin\":true,\"enableNewLinux\":true,\"enableNewWindows\":true,\"enabled\":true,\"updatedAt\":\"string\"}},\"growthData\":{},\"logo\":\"string\",\"name\":\"string\",\"newSystemUserStateDefaults\":{\"applicationImport\":\"ACTIVATED\",\"csvImport\":\"ACTIVATED\",\"manualEntry\":\"ACTIVATED\"},\"passwordCompliance\":\"custom\",\"passwordPolicy\":{\"allowUsernameSubstring\":true,\"daysAfterExpirationToSelfRecover\":0,\"daysBeforeExpirationToForceReset\":1,\"effectiveDate\":\"string\",\"enableDaysAfterExpirationToSelfRecover\":true,\"enableDaysBeforeExpirationToForceReset\":true,\"enableLockoutTimeInSeconds\":true,\"enableMaxHistory\":true,\"enableMaxLoginAttempts\":true,\"enableMinChangePeriodInDays\":true,\"enableMinLength\":true,\"enablePasswordExpirationInDays\":true,\"gracePeriodDate\":\"string\",\"lockoutTimeInSeconds\":0,\"maxHistory\":1,\"maxLoginAttempts\":1,\"minChangePeriodInDays\":0,\"minLength\":0,\"needsLowercase\":true,\"needsNumeric\":true,\"needsSymbolic\":true,\"needsUppercase\":true,\"passwordExpirationInDays\":1},\"showIntro\":true,\"systemUserPasswordExpirationInDays\":0,\"systemUsersCanEdit\":true,\"systemUsersCap\":0,\"trustedAppConfig\":{\"trustedApps\":[{\"name\":\"Application 1\",\"path\":\"/someuser/Applications/application1.app\",\"teamid\":\"FakeTeamID\"}]},\"userPortal\":{\"idleSessionDurationMinutes\":1}}}'" } ] } }, "/radiusservers": { "get": { "description": "This endpoint allows you to get a list of all RADIUS servers in your organization.\n\n#### Sample Request\n```\ncurl -X GET https://console.jumpcloud.com/api/radiusservers/ \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n```", "operationId": "RadiusServer_List", "parameters": [ { "$ref": "#/parameters/trait:fields:fields" }, { "$ref": "#/parameters/trait:filter:filter" }, { "$ref": "#/parameters/trait:limit:limit" }, { "$ref": "#/parameters/trait:skip:skip" }, { "$ref": "#/parameters/trait:sort:sort" } ], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/radiusserverslist" } } }, "security": [ { "x-api-key": [] } ], "summary": "List Radius Servers", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url 'https://console.jumpcloud.com/api/radiusservers?fields=&filter=SOME_STRING_VALUE&limit=10&skip=0&sort=' \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/radiusservers\"\n\nquerystring = {\"fields\":\"\",\"filter\":\"SOME_STRING_VALUE\",\"limit\":\"10\",\"skip\":\"0\",\"sort\":\"\"}\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/radiusservers?fields=&filter=SOME_STRING_VALUE&limit=10&skip=0&sort=' -Method GET -Headers $headers" } ] }, "post": { "description": "This endpoint allows you to create RADIUS servers in your organization.\n\n#### Sample Request\n```\ncurl -X POST https://console.jumpcloud.com/api/radiusservers/ \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n \"name\": \"{test_radius}\",\n \"networkSourceIp\": \"{0.0.0.0}\",\n \"sharedSecret\":\"{secretpassword}\",\n \"userLockoutAction\": \"REMOVE\",\n \"userPasswordExpirationAction\": \"MAINTAIN\"\n}'\n```", "operationId": "RadiusServer_Create", "parameters": [ { "in": "body", "name": "body", "schema": { "$ref": "#/definitions/radiusserverpost" } } ], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/radiusserver" } } }, "security": [ { "x-api-key": [] } ], "summary": "Create a Radius Server", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url https://console.jumpcloud.com/api/radiusservers \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"authIdp\":\"JUMPCLOUD\",\"mfa\":\"DISABLED\",\"name\":\"string\",\"networkSourceIp\":\"string\",\"sharedSecret\":\"string\",\"tagNames\":[\"string\"],\"userLockoutAction\":\"string\",\"userPasswordExpirationAction\":\"string\"}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/radiusservers\"\n\npayload = {\n \"authIdp\": \"JUMPCLOUD\",\n \"mfa\": \"DISABLED\",\n \"name\": \"string\",\n \"networkSourceIp\": \"string\",\n \"sharedSecret\": \"string\",\n \"tagNames\": [\"string\"],\n \"userLockoutAction\": \"string\",\n \"userPasswordExpirationAction\": \"string\"\n}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"POST\", url, json=payload, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/radiusservers' -Method POST -Headers $headers -ContentType 'application/json' -Body '{\"authIdp\":\"JUMPCLOUD\",\"mfa\":\"DISABLED\",\"name\":\"string\",\"networkSourceIp\":\"string\",\"sharedSecret\":\"string\",\"tagNames\":[\"string\"],\"userLockoutAction\":\"string\",\"userPasswordExpirationAction\":\"string\"}'" } ] } }, "/radiusservers/{id}": { "delete": { "description": "This endpoint allows you to delete RADIUS servers in your organization.\n```\ncurl -X DELETE https://console.jumpcloud.com/api/radiusservers/{ServerID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n```", "operationId": "RadiusServer_Delete", "parameters": [], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/radiusserverput" } } }, "security": [ { "x-api-key": [] } ], "summary": "Delete Radius Server", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request DELETE \\\n --url https://console.jumpcloud.com/api/radiusservers/{id} \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/radiusservers/{id}\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"DELETE\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/radiusservers/{id}' -Method DELETE -Headers $headers" } ] }, "get": { "description": "This endpoint allows you to get a RADIUS server in your organization.\n\n####\n```\ncurl -X PUT https://console.jumpcloud.com/api/radiusservers/{ServerID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n```", "operationId": "RadiusServer_Get", "parameters": [], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/radiusserver" } } }, "security": [ { "x-api-key": [] } ], "summary": "Get Radius Server", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url https://console.jumpcloud.com/api/radiusservers/{id} \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/radiusservers/{id}\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/radiusservers/{id}' -Method GET -Headers $headers" } ] }, "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ], "put": { "description": "This endpoint allows you to update RADIUS servers in your organization.\n\n####\n```\ncurl -X PUT https://console.jumpcloud.com/api/radiusservers/{ServerID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n \"name\": \"{name_update}\",\n \"networkSourceIp\": \"{0.0.0.0}\",\n \"sharedSecret\": \"{secret_password}\",\n \"userLockoutAction\": \"REMOVE\",\n \"userPasswordExpirationAction\": \"MAINTAIN\"\n}'\n```", "operationId": "RadiusServer_Set", "parameters": [ { "in": "body", "name": "body", "schema": { "example": { "name": "test radius", "networkSourceIp": "0.0.0.0", "sharedSecret": "secretradiuspassword", "tagsNames": [ "tag1" ] }, "properties": { "mfa": { "enum": [ "DISABLED", "ENABLED", "REQUIRED", "ALWAYS" ], "type": "string" }, "name": { "type": "string" }, "networkSourceIp": { "type": "string" }, "sharedSecret": { "type": "string" }, "userLockoutAction": { "type": "string" }, "userPasswordExpirationAction": { "type": "string" } }, "required": [ "name", "networkSourceIp", "sharedSecret" ], "type": "object" } } ], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/radiusserverput" } } }, "security": [ { "x-api-key": [] } ], "summary": "Update Radius Servers", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request PUT \\\n --url https://console.jumpcloud.com/api/radiusservers/{id} \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"name\":\"test radius\",\"networkSourceIp\":\"0.0.0.0\",\"sharedSecret\":\"secretradiuspassword\",\"tagsNames\":[\"tag1\"]}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/radiusservers/{id}\"\n\npayload = {\n \"name\": \"test radius\",\n \"networkSourceIp\": \"0.0.0.0\",\n \"sharedSecret\": \"secretradiuspassword\",\n \"tagsNames\": [\"tag1\"]\n}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"PUT\", url, json=payload, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/radiusservers/{id}' -Method PUT -Headers $headers -ContentType 'application/json' -Body '{\"name\":\"test radius\",\"networkSourceIp\":\"0.0.0.0\",\"sharedSecret\":\"secretradiuspassword\",\"tagsNames\":[\"tag1\"]}'" } ] } }, "/search/commands": { "post": { "description": "Return Commands in multi-record format allowing for the passing of the `filter` and `searchFilter` parameters. This WILL NOT allow you to add a new command.\nTo support advanced filtering you can use the `filter` and `searchFilter` parameters that can only be passed in the body of POST /api/search/* routes. The `filter` and `searchFilter` parameters must be passed as Content-Type application/json.\nThe `filter` parameter is an object with a single property, either `and` or `or` with the value of the property being an array of query expressions.\nThis allows you to filter records using the logic of matching ALL or ANY records in the array of query expressions. If the `and` or `or` are not included the default behavior is to match ALL query expressions.\nThe `searchFilter` parameter allows text searching on supported fields by specifying a `searchTerm` and a list of `fields` to query on. If any `field` has a partial text match on the `searchTerm` the record will be returned.\n\n#### Sample Request\nExact search for a list of commands in a launchType\n```\ncurl -X POST https://console.jumpcloud.com/api/search/commands \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n \"filter\" : [{\"launchType\" : \"repeated\"}],\n \"fields\" : \"name launchType sudo\"\n}'\n```\nText search for commands with name\n```\ncurl -X POST https://console.jumpcloud.com/api/search/commands \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n \"searchFilter\" : {\n \"searchTerm\": \"List\",\n \"fields\": [\"name\"]\n },\n \"fields\" : \"name launchType sudo\"\n}'\n```\nText search for multiple commands\n```\ncurl -X POST https://console.jumpcloud.com/api/search/commands \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n \"searchFilter\" : {\n \"searchTerm\": [\"List\", \"Log\"],\n \"fields\": [\"name\"]\n },\n \"fields\" : \"name launchType sudo\"\n}'\n```\nCombining `filter` and `searchFilter` to text search for commands with name who are in a list of launchType\n```\ncurl -X POST https://console.jumpcloud.com/api/search/commands \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n \"searchFilter\": {\n \"searchTerm\": \"List\",\n \"fields\": [\"name\"]\n },\n \"filter\": {\n \"or\": [\n {\"launchType\" : \"repeated\"},\n {\"launchType\" : \"one-time\"}\n ]\n },\n \"fields\" : \"name launchType sudo\"\n}'\n```", "operationId": "Commands_Search", "parameters": [ { "in": "body", "name": "body", "schema": { "$ref": "#/definitions/search" } }, { "$ref": "#/parameters/trait:fields:fields" }, { "$ref": "#/parameters/trait:filter:filter" }, { "$ref": "#/parameters/trait:limit:limit" }, { "$ref": "#/parameters/trait:skip:skip" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/commandslist" } } }, "security": [ { "x-api-key": [] } ], "summary": "Search Commands", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url 'https://console.jumpcloud.com/api/search/commands?fields=&filter=SOME_STRING_VALUE&limit=10&skip=0' \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"fields\":\"string\",\"filter\":{},\"searchFilter\":{}}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/search/commands\"\n\nquerystring = {\"fields\":\"\",\"filter\":\"SOME_STRING_VALUE\",\"limit\":\"10\",\"skip\":\"0\"}\n\npayload = {\n \"fields\": \"string\",\n \"filter\": {},\n \"searchFilter\": {}\n}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"POST\", url, json=payload, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/search/commands?fields=&filter=SOME_STRING_VALUE&limit=10&skip=0' -Method POST -Headers $headers -ContentType 'application/json' -Body '{\"fields\":\"string\",\"filter\":{},\"searchFilter\":{}}'" } ] } }, "/search/organizations": { "post": { "description": "This endpoint will return Organization data based on your search parameters. This endpoint WILL NOT allow you to add a new Organization.\n\nYou can use the supported parameters and pass those in the body of request.\n\nThe parameters must be passed as Content-Type application/json.\n\n\n#### Sample Request\n```\ncurl -X POST https://console.jumpcloud.com/api/search/organizations \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n \"search\":{\n \"fields\" : [\"settings.name\"],\n \"searchTerm\": \"Second\"\n },\n \"fields\": [\"_id\", \"displayName\", \"logoUrl\"],\n \"limit\" : 0,\n \"skip\" : 0\n}'\n```", "operationId": "Organization_Search", "parameters": [ { "in": "body", "name": "body", "schema": { "$ref": "#/definitions/search" } }, { "$ref": "#/parameters/trait:fields:fields" }, { "$ref": "#/parameters/trait:filter:filter" }, { "$ref": "#/parameters/trait:limit:limit" }, { "$ref": "#/parameters/trait:skip:skip" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/organizationslist" } } }, "security": [ { "x-api-key": [] } ], "summary": "Search Organizations", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url 'https://console.jumpcloud.com/api/search/organizations?fields=&filter=SOME_STRING_VALUE&limit=10&skip=0' \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"fields\":\"string\",\"filter\":{},\"searchFilter\":{}}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/search/organizations\"\n\nquerystring = {\"fields\":\"\",\"filter\":\"SOME_STRING_VALUE\",\"limit\":\"10\",\"skip\":\"0\"}\n\npayload = {\n \"fields\": \"string\",\n \"filter\": {},\n \"searchFilter\": {}\n}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"POST\", url, json=payload, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/search/organizations?fields=&filter=SOME_STRING_VALUE&limit=10&skip=0' -Method POST -Headers $headers -ContentType 'application/json' -Body '{\"fields\":\"string\",\"filter\":{},\"searchFilter\":{}}'" } ] } }, "/search/systems": { "post": { "description": "Return Systems in multi-record format allowing for the passing of the `filter` and `searchFilter` parameters. This WILL NOT allow you to add a new system.\n\nTo support advanced filtering you can use the `filter` and `searchFilter` parameters that can only be passed in the body of POST /api/search/* routes. The `filter` and `searchFilter` parameters must be passed as Content-Type application/json.\n\nThe `filter` parameter is an object with a single property, either `and` or `or` with the value of the property being an array of query expressions.\n\nThis allows you to filter records using the logic of matching ALL or ANY records in the array of query expressions. If the `and` or `or` are not included the default behavior is to match ALL query expressions.\n\nThe `searchFilter` parameter allows text searching on supported fields by specifying a `searchTerm` and a list of `fields` to query on. If any `field` has a partial text match on the `searchTerm` the record will be returned.\n\n\n#### Sample Request\n\nExact search for a list of hostnames\n```\ncurl -X POST https://console.jumpcloud.com/api/search/systems \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n \"filter\": {\n \"or\": [\n {\"hostname\" : \"my-hostname\"},\n {\"hostname\" : \"other-hostname\"}\n ]\n },\n \"fields\" : \"os hostname displayName\"\n}'\n```\n\nText search for a hostname or display name\n```\ncurl -X POST https://console.jumpcloud.com/api/search/systems \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n \"searchFilter\": {\n \"searchTerm\": \"my-host\",\n \"fields\": [\"hostname\", \"displayName\"]\n },\n \"fields\": \"os hostname displayName\"\n}'\n```\n\nText search for a multiple hostnames.\n```\ncurl -X POST https://console.jumpcloud.com/api/search/systems \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n \"searchFilter\": {\n \"searchTerm\": [\"my-host\", \"my-other-host\"],\n \"fields\": [\"hostname\"]\n },\n \"fields\": \"os hostname displayName\"\n}'\n```\n\nCombining `filter` and `searchFilter` to search for names that match a given OS\n```\ncurl -X POST https://console.jumpcloud.com/api/search/systems \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n \"searchFilter\": {\n \"searchTerm\": \"my-host\",\n \"fields\": [\"hostname\", \"displayName\"]\n },\n \"filter\": {\n \"or\": [\n {\"os\" : \"Ubuntu\"},\n {\"os\" : \"Mac OS X\"}\n ]\n },\n \"fields\": \"os hostname displayName\"\n}'\n```", "operationId": "System_Search", "parameters": [ { "in": "body", "name": "body", "schema": { "$ref": "#/definitions/search" } }, { "$ref": "#/parameters/trait:fields:fields" }, { "$ref": "#/parameters/trait:limit:limit" }, { "$ref": "#/parameters/trait:skip:skip" }, { "$ref": "#/parameters/trait:filter:filter" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/systemslist" } } }, "security": [ { "x-api-key": [] } ], "summary": "Search Systems", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url 'https://console.jumpcloud.com/api/search/systems?fields=&limit=10&skip=0&filter=SOME_STRING_VALUE' \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"fields\":\"string\",\"filter\":{},\"searchFilter\":{}}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/search/systems\"\n\nquerystring = {\"fields\":\"\",\"limit\":\"10\",\"skip\":\"0\",\"filter\":\"SOME_STRING_VALUE\"}\n\npayload = {\n \"fields\": \"string\",\n \"filter\": {},\n \"searchFilter\": {}\n}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"POST\", url, json=payload, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/search/systems?fields=&limit=10&skip=0&filter=SOME_STRING_VALUE' -Method POST -Headers $headers -ContentType 'application/json' -Body '{\"fields\":\"string\",\"filter\":{},\"searchFilter\":{}}'" } ] } }, "/search/systemusers": { "post": { "description": "Return System Users in multi-record format allowing for the passing of the `filter` and `searchFilter` parameters. This WILL NOT allow you to add a new system user.\n\nTo support advanced filtering you can use the `filter` and `searchFilter` parameters that can only be passed in the body of POST /api/search/* routes. The `filter` and `searchFilter` parameters must be passed as Content-Type application/json.\n\nThe `filter` parameter is an object with a single property, either `and` or `or` with the value of the property being an array of query expressions.\n\nThis allows you to filter records using the logic of matching ALL or ANY records in the array of query expressions. If the `and` or `or` are not included the default behavior is to match ALL query expressions.\n\nThe `searchFilter` parameter allows text searching on supported fields by specifying a `searchTerm` and a list of `fields` to query on. If any `field` has a partial text match on the `searchTerm` the record will be returned.\n\n\n#### Sample Request\n\nExact search for a list of system users in a department\n```\ncurl -X POST https://console.jumpcloud.com/api/search/systemusers \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n \"filter\" : [{\"department\" : \"IT\"}],\n \"fields\" : \"email username sudo\"\n}'\n```\n\nText search for system users with and email on a domain\n```\ncurl -X POST https://console.jumpcloud.com/api/search/systemusers \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n \"searchFilter\" : {\n \"searchTerm\": \"@jumpcloud.com\",\n \"fields\": [\"email\"]\n },\n \"fields\" : \"email username sudo\"\n}'\n```\n\nText search for multiple system users\n```\ncurl -X POST https://console.jumpcloud.com/api/search/systemusers \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n \"searchFilter\" : {\n \"searchTerm\": [\"john\", \"sarah\"],\n \"fields\": [\"username\"]\n },\n \"fields\" : \"email username sudo\"\n}'\n```\n\nCombining `filter` and `searchFilter` to text search for system users with and email on a domain who are in a list of departments\n```\ncurl -X POST https://console.jumpcloud.com/api/search/systemusers \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n \"searchFilter\": {\n \"searchTerm\": \"@jumpcloud.com\",\n \"fields\": [\"email\"]\n },\n \"filter\": {\n \"or\": [\n {\"department\" : \"IT\"},\n {\"department\" : \"Sales\"}\n ]\n },\n \"fields\" : \"email username sudo\"\n}'\n```", "operationId": "User_Search", "parameters": [ { "in": "body", "name": "body", "schema": { "$ref": "#/definitions/search" } }, { "$ref": "#/parameters/trait:fields:fields" }, { "$ref": "#/parameters/trait:filter:filter" }, { "$ref": "#/parameters/trait:limit:limit" }, { "$ref": "#/parameters/trait:skip:skip" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/systemuserslist" } } }, "security": [ { "x-api-key": [] } ], "summary": "Search System Users", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url 'https://console.jumpcloud.com/api/search/systemusers?fields=&filter=SOME_STRING_VALUE&limit=10&skip=0' \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"fields\":\"string\",\"filter\":{},\"searchFilter\":{}}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/search/systemusers\"\n\nquerystring = {\"fields\":\"\",\"filter\":\"SOME_STRING_VALUE\",\"limit\":\"10\",\"skip\":\"0\"}\n\npayload = {\n \"fields\": \"string\",\n \"filter\": {},\n \"searchFilter\": {}\n}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"POST\", url, json=payload, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/search/systemusers?fields=&filter=SOME_STRING_VALUE&limit=10&skip=0' -Method POST -Headers $headers -ContentType 'application/json' -Body '{\"fields\":\"string\",\"filter\":{},\"searchFilter\":{}}'" } ] } }, "/systems": { "get": { "description": "This endpoint returns all Systems.\n\n#### Sample Requests\n```\ncurl -X GET https://console.jumpcloud.com/api/systems \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n\n```", "operationId": "System_List", "parameters": [ { "$ref": "#/parameters/trait:fields:fields" }, { "$ref": "#/parameters/trait:limit:limit" }, { "$ref": "#/parameters/trait:search:search" }, { "$ref": "#/parameters/trait:skip:skip" }, { "$ref": "#/parameters/trait:sort:sort" }, { "$ref": "#/parameters/trait:filter:filter" } ], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/systemslist" } } }, "security": [ { "x-api-key": [] } ], "summary": "List All Systems", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url 'https://console.jumpcloud.com/api/systems?fields=&limit=10&search=SOME_STRING_VALUE&skip=0&sort=&filter=SOME_STRING_VALUE' \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systems\"\n\nquerystring = {\"fields\":\"\",\"limit\":\"10\",\"search\":\"SOME_STRING_VALUE\",\"skip\":\"0\",\"sort\":\"\",\"filter\":\"SOME_STRING_VALUE\"}\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systems?fields=&limit=10&search=SOME_STRING_VALUE&skip=0&sort=&filter=SOME_STRING_VALUE' -Method GET -Headers $headers" } ] } }, "/systems/{id}": { "delete": { "description": "This endpoint allows you to delete a system. This command will cause the system to uninstall the JumpCloud agent from its self which can can take about a minute. If the system is not connected to JumpCloud the system record will simply be removed.\n\n#### Sample Request\n```\ncurl -X DELETE https://console.jumpcloud.com/api/systems/{SystemID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n ```", "operationId": "System_Delete", "parameters": [], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/JcSystem" } } }, "security": [ { "x-api-key": [] } ], "summary": "Delete a System", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request DELETE \\\n --url https://console.jumpcloud.com/api/systems/{id} \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systems/{id}\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"DELETE\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systems/{id}' -Method DELETE -Headers $headers" } ] }, "get": { "description": "This endpoint returns an individual system.\n\n#### Sample Request\n```\ncurl -X GET https://console.jumpcloud.com/api/systems/{SystemID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n ```", "operationId": "System_Get", "parameters": [ { "$ref": "#/parameters/trait:fields:fields" }, { "$ref": "#/parameters/trait:filter:filter" } ], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/JcSystem" } } }, "security": [ { "x-api-key": [] } ], "summary": "List an individual system", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url 'https://console.jumpcloud.com/api/systems/{id}?fields=&filter=SOME_STRING_VALUE' \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systems/{id}\"\n\nquerystring = {\"fields\":\"\",\"filter\":\"SOME_STRING_VALUE\"}\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systems/{id}?fields=&filter=SOME_STRING_VALUE' -Method GET -Headers $headers" } ] }, "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ], "put": { "description": "This endpoint allows you to update a system.\n\n#### Sample Request \n```\ncurl -X PUT https://console.jumpcloud.com/api/systems/{SystemID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n\t\"displayName\":\"Name_Update\",\n\t\"allowSshPasswordAuthentication\":\"true\",\n\t\"allowSshRootLogin\":\"true\",\n\t\"allowMultiFactorAuthentication\":\"true\",\n\t\"allowPublicKeyAuthentication\":\"false\"\n}'\n```", "operationId": "System_Set", "parameters": [ { "in": "body", "name": "body", "schema": { "$ref": "#/definitions/systemput" } } ], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/JcSystem" } } }, "security": [ { "x-api-key": [] } ], "summary": "Update a system", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request PUT \\\n --url https://console.jumpcloud.com/api/systems/{id} \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"agentBoundMessages\":[{\"cmd\":\"string\"}],\"allowMultiFactorAuthentication\":true,\"allowPublicKeyAuthentication\":true,\"allowSshPasswordAuthentication\":true,\"allowSshRootLogin\":true,\"displayName\":\"string\",\"tags\":[\"string\"]}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systems/{id}\"\n\npayload = {\n \"agentBoundMessages\": [{\"cmd\": \"string\"}],\n \"allowMultiFactorAuthentication\": True,\n \"allowPublicKeyAuthentication\": True,\n \"allowSshPasswordAuthentication\": True,\n \"allowSshRootLogin\": True,\n \"displayName\": \"string\",\n \"tags\": [\"string\"]\n}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"PUT\", url, json=payload, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systems/{id}' -Method PUT -Headers $headers -ContentType 'application/json' -Body '{\"agentBoundMessages\":[{\"cmd\":\"string\"}],\"allowMultiFactorAuthentication\":true,\"allowPublicKeyAuthentication\":true,\"allowSshPasswordAuthentication\":true,\"allowSshRootLogin\":true,\"displayName\":\"string\",\"tags\":[\"string\"]}'" } ] } }, "/systems/{system_id}/command/builtin/erase": { "parameters": [ { "in": "path", "name": "system_id", "required": true, "type": "string" } ], "post": { "description": "This endpoint allows you to run the erase command on the specified device. If a device is offline, the command will be run when the device becomes available.\n\n#### Sample Request\n```\ncurl -X POST \\\n https://console.jumpcloud.com/api/systems/{system_id}/command/builtin/erase \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d {}\n```", "operationId": "System_Clear", "parameters": [], "responses": { "201": { "description": "Command created" } }, "security": [ { "x-api-key": [] } ], "summary": "Erase a System", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url https://console.jumpcloud.com/api/systems/{system_id}/command/builtin/erase \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systems/{system_id}/command/builtin/erase\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"POST\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systems/{system_id}/command/builtin/erase' -Method POST -Headers $headers" } ] } }, "/systems/{system_id}/command/builtin/lock": { "parameters": [ { "in": "path", "name": "system_id", "required": true, "type": "string" } ], "post": { "description": "This endpoint allows you to run the lock command on the specified device. If a device is offline, the command will be run when the device becomes available.\n\n#### Sample Request\n```\ncurl -X POST \\\n https://console.jumpcloud.com/api/systems/{system_id}/command/builtin/lock \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d {}\n```", "operationId": "System_Lock", "parameters": [], "responses": { "201": { "description": "Command created" } }, "security": [ { "x-api-key": [] } ], "summary": "Lock a System", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url https://console.jumpcloud.com/api/systems/{system_id}/command/builtin/lock \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systems/{system_id}/command/builtin/lock\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"POST\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systems/{system_id}/command/builtin/lock' -Method POST -Headers $headers" } ] } }, "/systems/{system_id}/command/builtin/restart": { "parameters": [ { "in": "path", "name": "system_id", "required": true, "type": "string" } ], "post": { "description": "This endpoint allows you to run the restart command on the specified device. If a device is offline, the command will be run when the device becomes available.\n\n#### Sample Request\n```\ncurl -X POST \\\n https://console.jumpcloud.com/api/systems/{system_id}/command/builtin/restart \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d {}\n```", "operationId": "System_Restart", "parameters": [], "responses": { "201": { "description": "Command created" } }, "security": [ { "x-api-key": [] } ], "summary": "Restart a System", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url https://console.jumpcloud.com/api/systems/{system_id}/command/builtin/restart \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systems/{system_id}/command/builtin/restart\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"POST\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systems/{system_id}/command/builtin/restart' -Method POST -Headers $headers" } ] } }, "/systems/{system_id}/command/builtin/shutdown": { "parameters": [ { "in": "path", "name": "system_id", "required": true, "type": "string" } ], "post": { "description": "This endpoint allows you to run the shutdown command on the specified device. If a device is offline, the command will be run when the device becomes available.\n\n#### Sample Request\n```\ncurl -X POST \\\n https://console.jumpcloud.com/api/systems/{system_id}/command/builtin/shutdown \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d {}\n```", "operationId": "System_Stop", "parameters": [], "responses": { "201": { "description": "Command created" } }, "security": [ { "x-api-key": [] } ], "summary": "Shutdown a System", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url https://console.jumpcloud.com/api/systems/{system_id}/command/builtin/shutdown \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systems/{system_id}/command/builtin/shutdown\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"POST\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systems/{system_id}/command/builtin/shutdown' -Method POST -Headers $headers" } ] } }, "/systemusers": { "get": { "description": "This endpoint returns all systemusers.\n\n#### Sample Request\n\n```\ncurl -X GET https://console.jumpcloud.com/api/systemusers \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n```", "operationId": "User_List", "parameters": [ { "default": 10, "description": "The number of records to return at once.", "in": "query", "name": "limit", "type": "integer" }, { "default": 0, "description": "The offset into the records to return.", "in": "query", "name": "skip", "type": "integer" }, { "default": "", "description": "The space separated fields used to sort the collection.\nDefault sort is ascending, prefix with `-` to sort descending.\n", "in": "query", "name": "sort", "type": "string" }, { "default": "", "description": "The space separated fields included in the returned records.\nIf omitted the default list of fields will be returned.\n", "in": "query", "name": "fields", "type": "string" }, { "$ref": "#/parameters/trait:filter:filter" }, { "$ref": "#/parameters/trait:search:search" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/systemuserslist" } } }, "security": [ { "x-api-key": [] } ], "summary": "List all system users", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url 'https://console.jumpcloud.com/api/systemusers?limit=10&skip=0&sort=&fields=&filter=SOME_STRING_VALUE&search=SOME_STRING_VALUE' \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systemusers\"\n\nquerystring = {\"limit\":\"10\",\"skip\":\"0\",\"sort\":\"\",\"fields\":\"\",\"filter\":\"SOME_STRING_VALUE\",\"search\":\"SOME_STRING_VALUE\"}\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systemusers?limit=10&skip=0&sort=&fields=&filter=SOME_STRING_VALUE&search=SOME_STRING_VALUE' -Method GET -Headers $headers" } ] }, "post": { "description": "\"This endpoint allows you to create a new system user.\n\n#### Default User State\nThe `state` of the user can be explicitly passed in or omitted. If\n`state` is omitted from the request, then the user will get created\nusing the value returned from the\n[Get an Organization](https://docs.jumpcloud.com/api/1.0/index.html#operation/organizations_get)\nendpoint. The default user state for manually created users is stored in\n`settings.newSystemUserStateDefaults.manualEntry`\n\nThese default state values can be changed in the admin portal settings\nor by using the\n[Update an Organization](https://docs.jumpcloud.com/api/1.0/index.html#operation/organization_put)\nendpoint.\n\n#### Sample Request\n\n```\ncurl -X POST https://console.jumpcloud.com/api/systemusers \\\n-H 'Accept: application/json' \\\n-H 'Content-Type: application/json' \\\n-H 'x-api-key: {API_KEY}' \\\n-d '{\n \"username\":\"{username}\",\n \"email\":\"{email_address}\",\n \"firstname\":\"{Name}\",\n \"lastname\":\"{Name}\"\n }'\n```", "operationId": "User_Create", "parameters": [ { "in": "body", "name": "body", "schema": { "$ref": "#/definitions/systemuserputpost" } } ], "responses": { "200": { "description": "User added successfully", "schema": { "$ref": "#/definitions/systemuserreturn" } } }, "security": [ { "x-api-key": [] } ], "summary": "Create a system user", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url https://console.jumpcloud.com/api/systemusers \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"account_locked\":true,\"activated\":true,\"addresses\":[{\"country\":\"string\",\"extendedAddress\":\"string\",\"locality\":\"string\",\"poBox\":\"string\",\"postalCode\":\"string\",\"region\":\"string\",\"streetAddress\":\"string\",\"type\":\"string\"}],\"allow_public_key\":true,\"alternateEmail\":\"string\",\"attributes\":[{\"name\":\"string\",\"value\":\"string\"}],\"company\":\"string\",\"costCenter\":\"string\",\"department\":\"string\",\"description\":\"string\",\"disableDeviceMaxLoginAttempts\":true,\"displayname\":\"string\",\"email\":\"string\",\"employeeIdentifier\":\"string\",\"employeeType\":\"string\",\"enable_managed_uid\":true,\"enable_user_portal_multifactor\":true,\"external_dn\":\"string\",\"external_password_expiration_date\":\"2019-08-24T14:15:22Z\",\"external_source_type\":\"string\",\"externally_managed\":true,\"firstname\":\"string\",\"jobTitle\":\"string\",\"lastname\":\"string\",\"ldap_binding_user\":true,\"location\":\"string\",\"managedAppleId\":\"string\",\"manager\":\"string\",\"mfa\":{\"configured\":true,\"exclusion\":true,\"exclusionDays\":1,\"exclusionUntil\":\"2019-08-24T14:15:22Z\"},\"middlename\":\"string\",\"password\":\"string\",\"password_never_expires\":true,\"passwordless_sudo\":true,\"phoneNumbers\":[{\"number\":\"string\",\"type\":\"string\"}],\"public_key\":\"string\",\"recoveryEmail\":{\"address\":\"string\"},\"relationships\":[{\"type\":\"string\",\"value\":\"string\"}],\"samba_service_user\":true,\"state\":\"STAGED\",\"sudo\":true,\"suspended\":true,\"tags\":[\"string\"],\"unix_guid\":1,\"unix_uid\":1,\"username\":\"string\"}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systemusers\"\n\npayload = {\n \"account_locked\": True,\n \"activated\": True,\n \"addresses\": [\n {\n \"country\": \"string\",\n \"extendedAddress\": \"string\",\n \"locality\": \"string\",\n \"poBox\": \"string\",\n \"postalCode\": \"string\",\n \"region\": \"string\",\n \"streetAddress\": \"string\",\n \"type\": \"string\"\n }\n ],\n \"allow_public_key\": True,\n \"alternateEmail\": \"string\",\n \"attributes\": [\n {\n \"name\": \"string\",\n \"value\": \"string\"\n }\n ],\n \"company\": \"string\",\n \"costCenter\": \"string\",\n \"department\": \"string\",\n \"description\": \"string\",\n \"disableDeviceMaxLoginAttempts\": True,\n \"displayname\": \"string\",\n \"email\": \"string\",\n \"employeeIdentifier\": \"string\",\n \"employeeType\": \"string\",\n \"enable_managed_uid\": True,\n \"enable_user_portal_multifactor\": True,\n \"external_dn\": \"string\",\n \"external_password_expiration_date\": \"2019-08-24T14:15:22Z\",\n \"external_source_type\": \"string\",\n \"externally_managed\": True,\n \"firstname\": \"string\",\n \"jobTitle\": \"string\",\n \"lastname\": \"string\",\n \"ldap_binding_user\": True,\n \"location\": \"string\",\n \"managedAppleId\": \"string\",\n \"manager\": \"string\",\n \"mfa\": {\n \"configured\": True,\n \"exclusion\": True,\n \"exclusionDays\": 1,\n \"exclusionUntil\": \"2019-08-24T14:15:22Z\"\n },\n \"middlename\": \"string\",\n \"password\": \"string\",\n \"password_never_expires\": True,\n \"passwordless_sudo\": True,\n \"phoneNumbers\": [\n {\n \"number\": \"string\",\n \"type\": \"string\"\n }\n ],\n \"public_key\": \"string\",\n \"recoveryEmail\": {\"address\": \"string\"},\n \"relationships\": [\n {\n \"type\": \"string\",\n \"value\": \"string\"\n }\n ],\n \"samba_service_user\": True,\n \"state\": \"STAGED\",\n \"sudo\": True,\n \"suspended\": True,\n \"tags\": [\"string\"],\n \"unix_guid\": 1,\n \"unix_uid\": 1,\n \"username\": \"string\"\n}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"POST\", url, json=payload, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systemusers' -Method POST -Headers $headers -ContentType 'application/json' -Body '{\"account_locked\":true,\"activated\":true,\"addresses\":[{\"country\":\"string\",\"extendedAddress\":\"string\",\"locality\":\"string\",\"poBox\":\"string\",\"postalCode\":\"string\",\"region\":\"string\",\"streetAddress\":\"string\",\"type\":\"string\"}],\"allow_public_key\":true,\"alternateEmail\":\"string\",\"attributes\":[{\"name\":\"string\",\"value\":\"string\"}],\"company\":\"string\",\"costCenter\":\"string\",\"department\":\"string\",\"description\":\"string\",\"disableDeviceMaxLoginAttempts\":true,\"displayname\":\"string\",\"email\":\"string\",\"employeeIdentifier\":\"string\",\"employeeType\":\"string\",\"enable_managed_uid\":true,\"enable_user_portal_multifactor\":true,\"external_dn\":\"string\",\"external_password_expiration_date\":\"2019-08-24T14:15:22Z\",\"external_source_type\":\"string\",\"externally_managed\":true,\"firstname\":\"string\",\"jobTitle\":\"string\",\"lastname\":\"string\",\"ldap_binding_user\":true,\"location\":\"string\",\"managedAppleId\":\"string\",\"manager\":\"string\",\"mfa\":{\"configured\":true,\"exclusion\":true,\"exclusionDays\":1,\"exclusionUntil\":\"2019-08-24T14:15:22Z\"},\"middlename\":\"string\",\"password\":\"string\",\"password_never_expires\":true,\"passwordless_sudo\":true,\"phoneNumbers\":[{\"number\":\"string\",\"type\":\"string\"}],\"public_key\":\"string\",\"recoveryEmail\":{\"address\":\"string\"},\"relationships\":[{\"type\":\"string\",\"value\":\"string\"}],\"samba_service_user\":true,\"state\":\"STAGED\",\"sudo\":true,\"suspended\":true,\"tags\":[\"string\"],\"unix_guid\":1,\"unix_uid\":1,\"username\":\"string\"}'" } ] } }, "/systemusers/{id}": { "delete": { "description": "This endpoint allows you to delete a particular system user.\n\n#### Sample Request\n```\ncurl -X DELETE https://console.jumpcloud.com/api/systemusers/{UserID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n```", "operationId": "User_Delete", "parameters": [], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/systemuserreturn" } } }, "security": [ { "x-api-key": [] } ], "summary": "Delete a system user", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request DELETE \\\n --url 'https://console.jumpcloud.com/api/systemusers/{id}?cascade_manager=SOME_STRING_VALUE' \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systemusers/{id}\"\n\nquerystring = {\"cascade_manager\":\"SOME_STRING_VALUE\"}\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"DELETE\", url, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systemusers/{id}?cascade_manager=SOME_STRING_VALUE' -Method DELETE -Headers $headers" } ] }, "get": { "description": "This endpoint returns a particular System User.\n\n#### Sample Request\n\n```\ncurl -X GET https://console.jumpcloud.com/api/systemusers/{UserID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}'\n```", "operationId": "User_Get", "parameters": [ { "$ref": "#/parameters/trait:fields:fields" }, { "$ref": "#/parameters/trait:filter:filter" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/systemuserreturn" } } }, "security": [ { "x-api-key": [] } ], "summary": "List a system user", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url 'https://console.jumpcloud.com/api/systemusers/{id}?fields=&filter=SOME_STRING_VALUE' \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systemusers/{id}\"\n\nquerystring = {\"fields\":\"\",\"filter\":\"SOME_STRING_VALUE\"}\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers, params=querystring)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systemusers/{id}?fields=&filter=SOME_STRING_VALUE' -Method GET -Headers $headers" } ] }, "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ], "put": { "description": "This endpoint allows you to update a system user.\n\n#### Sample Request\n\n```\ncurl -X PUT https://console.jumpcloud.com/api/systemusers/{UserID} \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\n\t\"email\":\"{email_address}\",\n\t\"firstname\":\"{Name}\",\n\t\"lastname\":\"{Name}\"\n}'\n```", "operationId": "User_Set", "parameters": [ { "in": "body", "name": "body", "schema": { "$ref": "#/definitions/systemuserput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/systemuserreturn" } } }, "security": [ { "x-api-key": [] } ], "summary": "Update a system user", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request PUT \\\n --url https://console.jumpcloud.com/api/systemusers/{id} \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"account_locked\":true,\"addresses\":[{\"country\":\"string\",\"extendedAddress\":\"string\",\"locality\":\"string\",\"poBox\":\"string\",\"postalCode\":\"string\",\"region\":\"string\",\"streetAddress\":\"string\",\"type\":\"string\"}],\"allow_public_key\":true,\"alternateEmail\":\"string\",\"attributes\":[{\"name\":\"string\",\"value\":\"string\"}],\"company\":\"string\",\"costCenter\":\"string\",\"department\":\"string\",\"description\":\"string\",\"disableDeviceMaxLoginAttempts\":true,\"displayname\":\"string\",\"email\":\"string\",\"employeeIdentifier\":\"string\",\"employeeType\":\"string\",\"enable_managed_uid\":true,\"enable_user_portal_multifactor\":true,\"external_dn\":\"string\",\"external_password_expiration_date\":\"string\",\"external_source_type\":\"string\",\"externally_managed\":true,\"firstname\":\"string\",\"jobTitle\":\"string\",\"lastname\":\"string\",\"ldap_binding_user\":true,\"location\":\"string\",\"managedAppleId\":\"string\",\"manager\":\"string\",\"mfa\":{\"configured\":true,\"exclusion\":true,\"exclusionDays\":1,\"exclusionUntil\":\"2019-08-24T14:15:22Z\"},\"middlename\":\"string\",\"password\":\"string\",\"password_never_expires\":true,\"phoneNumbers\":[{\"number\":\"string\",\"type\":\"string\"}],\"public_key\":\"string\",\"relationships\":[{\"type\":\"string\",\"value\":\"string\"}],\"samba_service_user\":true,\"ssh_keys\":[{\"name\":\"string\",\"public_key\":\"string\"}],\"state\":\"ACTIVATED\",\"sudo\":true,\"suspended\":true,\"tags\":[\"string\"],\"unix_guid\":1,\"unix_uid\":1,\"username\":\"string\"}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systemusers/{id}\"\n\npayload = {\n \"account_locked\": True,\n \"addresses\": [\n {\n \"country\": \"string\",\n \"extendedAddress\": \"string\",\n \"locality\": \"string\",\n \"poBox\": \"string\",\n \"postalCode\": \"string\",\n \"region\": \"string\",\n \"streetAddress\": \"string\",\n \"type\": \"string\"\n }\n ],\n \"allow_public_key\": True,\n \"alternateEmail\": \"string\",\n \"attributes\": [\n {\n \"name\": \"string\",\n \"value\": \"string\"\n }\n ],\n \"company\": \"string\",\n \"costCenter\": \"string\",\n \"department\": \"string\",\n \"description\": \"string\",\n \"disableDeviceMaxLoginAttempts\": True,\n \"displayname\": \"string\",\n \"email\": \"string\",\n \"employeeIdentifier\": \"string\",\n \"employeeType\": \"string\",\n \"enable_managed_uid\": True,\n \"enable_user_portal_multifactor\": True,\n \"external_dn\": \"string\",\n \"external_password_expiration_date\": \"string\",\n \"external_source_type\": \"string\",\n \"externally_managed\": True,\n \"firstname\": \"string\",\n \"jobTitle\": \"string\",\n \"lastname\": \"string\",\n \"ldap_binding_user\": True,\n \"location\": \"string\",\n \"managedAppleId\": \"string\",\n \"manager\": \"string\",\n \"mfa\": {\n \"configured\": True,\n \"exclusion\": True,\n \"exclusionDays\": 1,\n \"exclusionUntil\": \"2019-08-24T14:15:22Z\"\n },\n \"middlename\": \"string\",\n \"password\": \"string\",\n \"password_never_expires\": True,\n \"phoneNumbers\": [\n {\n \"number\": \"string\",\n \"type\": \"string\"\n }\n ],\n \"public_key\": \"string\",\n \"relationships\": [\n {\n \"type\": \"string\",\n \"value\": \"string\"\n }\n ],\n \"samba_service_user\": True,\n \"ssh_keys\": [\n {\n \"name\": \"string\",\n \"public_key\": \"string\"\n }\n ],\n \"state\": \"ACTIVATED\",\n \"sudo\": True,\n \"suspended\": True,\n \"tags\": [\"string\"],\n \"unix_guid\": 1,\n \"unix_uid\": 1,\n \"username\": \"string\"\n}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"PUT\", url, json=payload, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systemusers/{id}' -Method PUT -Headers $headers -ContentType 'application/json' -Body '{\"account_locked\":true,\"addresses\":[{\"country\":\"string\",\"extendedAddress\":\"string\",\"locality\":\"string\",\"poBox\":\"string\",\"postalCode\":\"string\",\"region\":\"string\",\"streetAddress\":\"string\",\"type\":\"string\"}],\"allow_public_key\":true,\"alternateEmail\":\"string\",\"attributes\":[{\"name\":\"string\",\"value\":\"string\"}],\"company\":\"string\",\"costCenter\":\"string\",\"department\":\"string\",\"description\":\"string\",\"disableDeviceMaxLoginAttempts\":true,\"displayname\":\"string\",\"email\":\"string\",\"employeeIdentifier\":\"string\",\"employeeType\":\"string\",\"enable_managed_uid\":true,\"enable_user_portal_multifactor\":true,\"external_dn\":\"string\",\"external_password_expiration_date\":\"string\",\"external_source_type\":\"string\",\"externally_managed\":true,\"firstname\":\"string\",\"jobTitle\":\"string\",\"lastname\":\"string\",\"ldap_binding_user\":true,\"location\":\"string\",\"managedAppleId\":\"string\",\"manager\":\"string\",\"mfa\":{\"configured\":true,\"exclusion\":true,\"exclusionDays\":1,\"exclusionUntil\":\"2019-08-24T14:15:22Z\"},\"middlename\":\"string\",\"password\":\"string\",\"password_never_expires\":true,\"phoneNumbers\":[{\"number\":\"string\",\"type\":\"string\"}],\"public_key\":\"string\",\"relationships\":[{\"type\":\"string\",\"value\":\"string\"}],\"samba_service_user\":true,\"ssh_keys\":[{\"name\":\"string\",\"public_key\":\"string\"}],\"state\":\"ACTIVATED\",\"sudo\":true,\"suspended\":true,\"tags\":[\"string\"],\"unix_guid\":1,\"unix_uid\":1,\"username\":\"string\"}'" } ] } }, "/systemusers/{id}/expire": { "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ], "post": { "description": "This endpoint allows you to expire a user's password.", "operationId": "ExpireUserPassword_POST", "parameters": [], "responses": { "200": { "description": "" } }, "security": [ { "x-api-key": [] } ], "summary": "Expire a system user's password", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url https://console.jumpcloud.com/api/systemusers/{id}/expire \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systemusers/{id}/expire\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"POST\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systemusers/{id}/expire' -Method POST -Headers $headers" } ] } }, "/systemusers/{id}/mfasync": { "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ], "post": { "description": "This endpoint allows you to re-sync a user's mfa enrollment status\n\n#### Sample Request\n```\ncurl -X POST \\\n https://console.jumpcloud.com/api/systemusers/{UserID}/mfasync \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n\n```", "operationId": "UserMfa_Sync", "responses": { "200": { "description": "OK" } }, "security": [ { "x-api-key": [] } ], "summary": "Sync a systemuser's mfa enrollment status", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url https://console.jumpcloud.com/api/systemusers/{id}/mfasync \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systemusers/{id}/mfasync\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"POST\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systemusers/{id}/mfasync' -Method POST -Headers $headers" } ] } }, "/systemusers/{id}/resetmfa": { "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ], "post": { "description": "This endpoint allows you to reset the TOTP key for a specified system user and put them in an TOTP MFA enrollment period. This will result in the user being prompted to setup TOTP MFA when logging into userportal. Please be aware that if the user does not complete TOTP MFA setup before the `exclusionUntil` date, they will be locked out of any resources that require TOTP MFA.\n\nPlease refer to our [Knowledge Base Article](https://support.jumpcloud.com/customer/en/portal/articles/2959138-using-multifactor-authentication-with-jumpcloud) on setting up MFA for more information.\n\n#### Sample Request\n```\ncurl -X POST \\\n https://console.jumpcloud.com/api/systemusers/{UserID}/resetmfa \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: {API_KEY}' \\\n -d '{\"exclusion\": true, \"exclusionUntil\": \"{date-time}\"}'\n\n```", "operationId": "UserMfa_Reset", "parameters": [ { "in": "body", "name": "body", "schema": { "properties": { "exclusion": { "type": "boolean" }, "exclusionDays": { "minimum": 1, "type": "number" }, "exclusionUntil": { "format": "date-time", "type": "string" } }, "type": "object" } } ], "responses": { "200": { "description": "" } }, "security": [ { "x-api-key": [] } ], "summary": "Reset a system user's MFA token", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url https://console.jumpcloud.com/api/systemusers/{id}/resetmfa \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"exclusion\":true,\"exclusionDays\":1,\"exclusionUntil\":\"2019-08-24T14:15:22Z\"}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systemusers/{id}/resetmfa\"\n\npayload = {\n \"exclusion\": True,\n \"exclusionDays\": 1,\n \"exclusionUntil\": \"2019-08-24T14:15:22Z\"\n}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"POST\", url, json=payload, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systemusers/{id}/resetmfa' -Method POST -Headers $headers -ContentType 'application/json' -Body '{\"exclusion\":true,\"exclusionDays\":1,\"exclusionUntil\":\"2019-08-24T14:15:22Z\"}'" } ] } }, "/systemusers/{id}/sshkeys": { "get": { "description": "This endpoint will return a specific System User's public SSH key.", "operationId": "UserSshKey_Get", "parameters": [], "responses": { "200": { "description": "", "schema": { "items": { "$ref": "#/definitions/sshkeylist" }, "type": "array" } } }, "security": [ { "x-api-key": [] } ], "summary": "List a system user's public SSH keys", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url https://console.jumpcloud.com/api/systemusers/{id}/sshkeys \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systemusers/{id}/sshkeys\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systemusers/{id}/sshkeys' -Method GET -Headers $headers" } ] }, "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ], "post": { "description": "This endpoint will create a specific System User's Public SSH Key.", "operationId": "UserSshKey_Create", "parameters": [ { "in": "body", "name": "body", "schema": { "$ref": "#/definitions/sshkeypost" } } ], "responses": { "200": { "description": "", "schema": { "$ref": "#/definitions/sshkeylist" } } }, "security": [ { "x-api-key": [] } ], "summary": "Create a system user's Public SSH Key", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url https://console.jumpcloud.com/api/systemusers/{id}/sshkeys \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"name\":\"string\",\"public_key\":\"string\"}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systemusers/{id}/sshkeys\"\n\npayload = {\n \"name\": \"string\",\n \"public_key\": \"string\"\n}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"POST\", url, json=payload, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systemusers/{id}/sshkeys' -Method POST -Headers $headers -ContentType 'application/json' -Body '{\"name\":\"string\",\"public_key\":\"string\"}'" } ] } }, "/systemusers/{id}/state/activate": { "post": { "description": "This endpoint changes the state of a STAGED user to ACTIVATED.\n#### Email Flag\nUse the \"email\" flag to determine whether or not to send a Welcome or\nActivation email to the newly activated user. Sending an empty body\nwithout the `email` flag, will send an email with default behavior\n(see the \"Behavior\" section below)\n```\n{}\n```\nSending `email=true` flag will send an email with default behavior (see `Behavior` below)\n```\n{ \"email\": true }\n```\nPopulated email will override the default behavior and send to the specified email value\n```\n{ \"email\": \"example@example.com\" }\n```\nSending `email=false` will suppress sending the email\n```\n{ \"email\": false }\n```\n#### Behavior\nUsers with a password will be sent a Welcome email to:\n - The address specified in `email` flag in the request\n - If no `email` flag, the user's primary email address (default behavior)\nUsers without a password will be sent an Activation email to:\n - The address specified in `email` flag in the request\n - If no `email` flag, the user's alternate email address (default behavior)\n - If no alternate email address, the user's primary email address (default behavior)\n\n#### Sample Request\n```\ncurl -X POST https://console.jumpcloud.com/api/systemusers/{id}/state/activate \\\n -H 'Accept: application/json' \\\n -H 'Content-Type: application/json' \\\n -H 'x-api-key: <api-key>' \\\n -d '{ \"email\": \"alternate-activation-email@email.com\" }'\n\n```", "operationId": "UserState_Activate", "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" }, { "in": "body", "name": "body", "schema": { "properties": { "email": { "type": "string" } }, "type": "object" } } ], "responses": { "200": { "description": "" } }, "security": [ { "x-api-key": [] } ], "summary": "Activate System User", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url https://console.jumpcloud.com/api/systemusers/{id}/state/activate \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"email\":{}}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systemusers/{id}/state/activate\"\n\npayload = {\"email\": {}}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"POST\", url, json=payload, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systemusers/{id}/state/activate' -Method POST -Headers $headers -ContentType 'application/json' -Body '{\"email\":{}}'" } ] } }, "/systemusers/{id}/unlock": { "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ], "post": { "description": "This endpoint allows you to unlock a user's account.", "operationId": "User_Unlock", "parameters": [], "responses": { "200": { "description": "" } }, "security": [ { "x-api-key": [] } ], "summary": "Unlock a system user", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url https://console.jumpcloud.com/api/systemusers/{id}/unlock \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systemusers/{id}/unlock\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"POST\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systemusers/{id}/unlock' -Method POST -Headers $headers" } ] } }, "/systemusers/{systemuser_id}/sshkeys/{id}": { "delete": { "description": "This endpoint will delete a specific System User's SSH Key.", "operationId": "UserSshKey_Delete", "parameters": [], "responses": { "200": { "description": "" } }, "security": [ { "x-api-key": [] } ], "summary": "Delete a system user's Public SSH Keys", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request DELETE \\\n --url https://console.jumpcloud.com/api/systemusers/{systemuser_id}/sshkeys/{id} \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/systemusers/{systemuser_id}/sshkeys/{id}\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"DELETE\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/systemusers/{systemuser_id}/sshkeys/{id}' -Method DELETE -Headers $headers" } ] }, "parameters": [ { "in": "path", "name": "systemuser_id", "required": true, "type": "string" }, { "in": "path", "name": "id", "required": true, "type": "string" } ] }, "/users/reactivate/{id}": { "get": { "description": "This endpoint triggers the sending of a reactivation e-mail to an administrator.", "operationId": "AdministratorUserActivation_Reset", "responses": { "200": { "description": "OK" } }, "security": [ { "x-api-key": [] } ], "summary": "Administrator Password Reset Initiation", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request GET \\\n --url https://console.jumpcloud.com/api/users/reactivate/{id} \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/users/reactivate/{id}\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"GET\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/users/reactivate/{id}' -Method GET -Headers $headers" } ] }, "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ] }, "/users/resettotp/{id}": { "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ], "post": { "description": "This endpoint initiates a TOTP reset for an admin. This request does not accept a body.", "operationId": "AdministratorUserTotp_Reset", "responses": { "200": { "description": "OK" } }, "security": [ { "x-api-key": [] } ], "summary": "Administrator TOTP Reset Initiation", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request POST \\\n --url https://console.jumpcloud.com/api/users/resettotp/{id} \\\n --header 'x-api-key: REPLACE_KEY_VALUE'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/users/resettotp/{id}\"\n\nheaders = {\"x-api-key\": \"REPLACE_KEY_VALUE\"}\n\nresponse = requests.request(\"POST\", url, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/users/resettotp/{id}' -Method POST -Headers $headers" } ] } }, "/users/{id}": { "parameters": [ { "in": "path", "name": "id", "required": true, "type": "string" } ], "put": { "description": "This endpoint allows you to update a user.", "operationId": "AdministratorUser_Set", "parameters": [ { "in": "body", "name": "body", "schema": { "$ref": "#/definitions/userput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/userreturn" } } }, "security": [ { "x-api-key": [] } ], "summary": "Update a user", "x-codeSamples": [ { "lang": "Shell", "source": "curl --request PUT \\\n --url https://console.jumpcloud.com/api/users/{id} \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: REPLACE_KEY_VALUE' \\\n --data '{\"email\":\"user@example.com\",\"enableMultiFactor\":true,\"firstname\":\"string\",\"growthData\":{},\"lastWhatsNewChecked\":\"2019-08-24\",\"lastname\":\"string\",\"roleName\":\"string\"}'" }, { "lang": "Python", "source": "import requests\n\nurl = \"https://console.jumpcloud.com/api/users/{id}\"\n\npayload = {\n \"email\": \"user@example.com\",\n \"enableMultiFactor\": True,\n \"firstname\": \"string\",\n \"growthData\": {},\n \"lastWhatsNewChecked\": \"2019-08-24\",\n \"lastname\": \"string\",\n \"roleName\": \"string\"\n}\nheaders = {\n \"x-api-key\": \"REPLACE_KEY_VALUE\",\n \"content-type\": \"application/json\"\n}\n\nresponse = requests.request(\"PUT\", url, json=payload, headers=headers)\n\nprint(response.text)" }, { "lang": "Powershell", "source": "$headers=@{}\n$headers.Add(\"x-api-key\", \"REPLACE_KEY_VALUE\")\n$headers.Add(\"content-type\", \"application/json\")\n$response = Invoke-RestMethod -Uri 'https://console.jumpcloud.com/api/users/{id}' -Method PUT -Headers $headers -ContentType 'application/json' -Body '{\"email\":\"user@example.com\",\"enableMultiFactor\":true,\"firstname\":\"string\",\"growthData\":{},\"lastWhatsNewChecked\":\"2019-08-24\",\"lastname\":\"string\",\"roleName\":\"string\"}'" } ] } } }, "produces": [ "application/json" ], "responses": { "trait:standardErrors:400": { "description": "", "schema": { "$ref": "#/definitions/Error" } }, "trait:standardErrors:401": { "description": "", "schema": { "$ref": "#/definitions/Error" } }, "trait:standardErrors:403": { "description": "", "schema": { "$ref": "#/definitions/Error" } }, "trait:standardErrors:404": { "description": "", "schema": { "$ref": "#/definitions/Error" } }, "trait:standardErrors:409": { "description": "", "schema": { "$ref": "#/definitions/Error" } }, "trait:standardErrors:500": { "description": "", "schema": { "$ref": "#/definitions/Error" } } }, "schemes": [ "https" ], "securityDefinitions": { "x-api-key": { "in": "header", "name": "x-api-key", "type": "apiKey" } }, "swagger": "2.0" } |