Skip to content

Create a generic button component

Create a generic button component

POST/api/component/createIntegratedGenericButton

Authorizations

x-auth-apikeystringheaderrequired

Your Rhombus API key. Must be accompanied by the x-auth-scheme header set to api-token (or partner-api-token for partner endpoints).

Authorizationstringheader

Instead of an API key, an OAuth access token: Bearer <token>, with the write scope.

OAuth explains tokens and scopes.

Headers

x-auth-schemeenum<string>headerdefault: api-token

Authentication scheme identifier. Use api-token or partner-api-token with the x-auth-apikey header, api or partner-api with x-auth-apikey plus a client certificate, api-oauth-token or partner-api-oauth-token with x-auth-access-token, and federated-token with x-auth-ft. A request with Authorization: Bearer <token> and no x-auth-scheme is treated as OAuth, and federated-token may also be sent as the x-auth-scheme and x-auth-ft query parameters.

Available options: api-token, api, api-oauth-token, federated-token, partner-api-token, partner-api, partner-api-oauth-token

x-auth-orgstring<RUUID>header

Client organization UUID (22-character RUUID), for partner credentials only. With it the call runs in that client organization with the partner support authority's role. Without it a partner credential runs as the partner organization, which outside the partner endpoints is deprecated (responses carry Deprecation and Sunset: Tue, 05 Jan 2027 00:00:00 GMT). A malformed value returns 400 INVALID_AUTH_ORG; a client organization the partner cannot access returns 403 PARTNER_CLIENT_ACCESS_DENIED.

Length: 22 to 22

Body

application/json · object

modeenum<string>body

Optional button mode configuration

Available options: PANIC, PROGRAMMABLE, DOORBELL, NONE

namestring | nullbody
ownerDeviceUuidstring<RUUID> | nullbody

base 64 (url-safe) uuid string

Example: "AAAAAAAAAAAAAAAAAAAAAA"

portobjectbody
Show child attributes
boardNuminteger<int32> | nullbody
portNuminteger<int32> | nullbody
portTypeenum<string>body

Available options: GPIO_INPUT, BUTTON_INPUT

Response

200 OK

application/json · object

componentobject
Show child attributes
baseTypeenum<string>

Available options: reader, dpi, relay, rex, aux, aperio, schlage, button

buttonTypeenum<string>

Available options: integrated_generic_button, integrated_doorbell_button, schlage_rs485_input_button, aperio_rs485_activator_button

createdAtMillisinteger<int64> | null
modeenum<string>

Optional button mode configuration

Available options: PANIC, PROGRAMMABLE, DOORBELL, NONE

namestring | null
orgUuidstring<RUUID> | null

base 64 (url-safe) uuid string

Example: "AAAAAAAAAAAAAAAAAAAAAA"

ownerDeviceUuidstring<RUUID> | null

base 64 (url-safe) uuid string

Example: "AAAAAAAAAAAAAAAAAAAAAA"

ownerHardwareTypeenum<string>

Available options: RASPBERRY_PI_3, CAMERA_R1, CAMERA_R2, CAMERA_R2_LONG_RANGE, CAMERA_R2_180, CAMERA_R3, CAMERA_R4, CAMERA_R100, CAMERA_R120, CAMERA_R170, CAMERA_R200, CAMERA_R500, CAMERA_R510, CAMERA_R520, CAMERA_R600, SENSOR_ASSET_TAG_T1, SENSOR_DOOR_D1, SENSOR_DOOR_D20, SENSOR_ENVIRONMENTAL_E1, SENSOR_ENVIRONMENTAL_E15, SENSOR_ENVIRONMENTAL_E2, SENSOR_MOTION_M1, SENSOR_MOTION_M15, GATEWAY_A1, GATEWAY_A100, GATEWAY_ENVIRONMENTAL_E50, CAMERA_R220, CAMERA_R230, CAMERA_R36S, CAMERA_R410, CAMERA_R540, CAMERA_R545, BADGE_READER_DR1, BADGE_READER_DR40, BADGE_READER_DR20, DOOR_CONTROLLER_DC1, DOOR_CONTROLLER_DC20, DOOR_CONTROLLER_DC10, ETHERNET_TESTER_ET1, IO_BOARD_TB1, BLE_BUTTON_B10, BLE_BUTTON_B15, CAMERA_THIRD_PARTY_RELAY, CAMERA_THIRD_PARTY_NVR, CAMERA_THIRD_PARTY_NVR_MULTISENSOR, NVR_N100, CAMERA_R130, NVR_N500, CAMERA_R150, ROBOT_RC1, CAMERA_R210, CAMERA_R650, NVR_N550, NVR_N551, ROBOT_RC2, UNSPECIFIED

portobject
Show child attributes
boardNuminteger<int32> | null
portNuminteger<int32> | null
portTypeenum<string>

Available options: GPIO_INPUT, BUTTON_INPUT

portImmutableboolean | null
typeenum<string>

Available options: RhombusOsdpDoorReader, OsdpDoorReader, WiegandDoorReader, IntegratedDoorPositionIndicator, IntegratedRequestToExit, IntegratedDoorRelay, IntegratedGenericRelay, IntegratedGenericInput, IntegratedGenericButton, SchlageInputButton, AperioActivatorButton, AperioGateway, AperioRs485Gateway, AperioDoorExtension, AperioDoorRelay, AperioDoorPositionIndicator, AperioDoorReader, AperioRs485DoorReader, AperioRs485DoorRelay, AperioRs485DoorPositionIndicator, AperioRs485DoorRequestToExit, AperioRs485DoorExtension, AperioDoorRequestToExit, SchlageRs485Gateway, SchlageRs485DoorExtension, SchlageRs485DoorRelay, SchlageRs485DoorPositionIndicator, SchlageRs485DoorReader, SchlageRs485DoorRequestToExit

updatedAtMillisinteger<int64> | null
uuidstring<RUUID> | null

base 64 (url-safe) uuid string

Example: "AAAAAAAAAAAAAAAAAAAAAA"

Errors

Like every operation, this one can also answer with the standard error body (errorCode, errorMsg). Errors explains each status and how to retry.

  • 400 Bad Request. errorCode is one of: BAD_REQUEST, VALIDATION_FAILED, MISSING_REQUIRED_FIELD, INVALID_JSON, INVALID_REQUEST_BODY, FEATURE_NOT_ENABLED, INVALID_AUTH_ORG, LOCATION_NOT_FOUND.
  • 401 Unauthorized. errorCode is one of: UNAUTHENTICATED, INVALID_CREDENTIAL, CREDENTIAL_EXPIRED, CREDENTIAL_REVOKED, CERTIFICATE_MISMATCH.
  • 403 Forbidden. errorCode is one of: FORBIDDEN, DOMAIN_NOT_ALLOWED, DEVICE_SCOPE_MISMATCH, ROLE_NOT_PERMITTED, FUNCTIONALITY_REQUIRED, PARTNER_FUNCTIONALITY_REQUIRED, PERMISSION_REQUIRED, PARTNER_CLIENT_ACCESS_DENIED, HARDWARE_NOT_AVAILABLE, HARDWARE_ALREADY_REGISTERED, PARTNER_PORTAL_NOT_ENABLED, MANAGED_BY_MSP, SUPER_ADMIN_RESTRICTED_BY_MSP, MSP_DESIGNATION_INVALID, NOT_MANAGED_CLIENT.
  • 429 Too Many Requests. errorCode is one of: RATE_LIMITED.
  • 500 Internal Server Error. errorCode is one of: INTERNAL_ERROR.
  • 503 Service Unavailable. errorCode is one of: SERVICE_UNAVAILABLE.