Get list of integration module configurations

GET/homes/{homeId}/intmods

Base URL: https://api.tinkermode.com

Get all integration module configurations registered for a home.

Authentication

Send an Authorization header of the form ModeCloud <AUTH_CODE>.

Must contain a user, service account, or project API key.

Path parameters

NameTypeRequiredConstraintsDescription
homeIdintegerYesThe unique ID for a specified home.

Query parameters

NameTypeRequiredConstraintsDescription
attributesQuerystringNoA filter string starting with a conjunction. Supported conjunctions are AND() and OR(). A conjunction takes a comma-separated condition string like AND (group==="group_1",maxSpeed<5). Each condition string defines a filter for the attribute value. The left-hand side must be a valid attribute field name. The right-hand side must be a value condition. For example, group==="group_1" matches any records where the group attribute value exactly matches "group_1". Supported operators are following | Operator | | | --- | --- | | === | exact match | | == | substring match | | ~== | included in array as exact match. name~==["john"|"jeff"|"jack"] matches one of the three. | | ~= | included in array as substring match. name~=["j"|"e"] matches "john", "jeff", "jack", and "ethan". | | < | less than | | <= | less than or equal to | | > | greater than | | >= | greater than or equal to |
catalogTypestringNoReturns integration module configurations of the specified catalog type.
limitintegerNodefault: 25; min: 1Maximum number of integration module configurations to return.
skipintegerNodefault: 0; min: 0Number of integration module configurations to skip over.

Responses

200 Successful retrieval of integration module configurations.

Content type: application/json

Represents an integration module configuration created in a project.

An array of objects with the following shape:

PropertyTypeRequiredConstraintsDescription
catalogTypestringYesCatalog type of the integration module.
claimsobjectNoClaims is the definition of the authentication method and credentials for the integration module.
Properties of claims
PropertyTypeRequiredConstraintsDescription
credentialsobjectNoCredentials is the definition of the authentication credentials for the integration module. the properties of the credentials object are dependent on the authentication method.
methodstringNoone of: oauth2, httpBasicAuth, httpAPIKey, httpAPIKeyQueryParam, jwtAuth, customHeaderAuthentication method of the integration module.
configIdstringYesread-only (server-generated)Unique Integration Module ID.
homeIdintegerYesHome that this integration module belongs to.
projectIdintegerYesread-only (server-generated)Project that this integration module belongs to.
scheduleobjectNoSchedule is the definition of the schedule for the integration module.
Properties of schedule
PropertyTypeRequiredConstraintsDescription
cronSchedulestringNocron schedule for the integration module. The format is a standard unix crontab and some extended format such as @everyXs, @hourly, etc.
cronTimeZonestringNocron time zone for the integration module.
operationsarray<object>No
Properties of operations
PropertyTypeRequiredConstraintsDescription
appConfigsobjectNoappConfigs is the configuration for the post processing of the operation response.
operationNamestringNoName of the operation. The operation names are defined in the integration module catalog.
parametersarray<object>NoParameters for the operation defined in the integration module catalog.
Properties of parameters
PropertyTypeRequiredConstraintsDescription
namestringNoName of the parameter.
valuestringNoValue of the parameter.

Response example

[
  {
    "attributes": {
      "attribute 1": "Value of the attribute 1",
      "attribute 2": "Value of the attribute 2"
    },
    "catalogType": "external-service",
    "claims": {
      "credentials": {
        "grantType": "client_credentials",
        "tokenUrl": "https://auth.example.com/oauth2/token"
      },
      "method": "oauth2"
    },
    "configId": "external-service-1234",
    "homeId": 1234,
    "projectId": 1234,
    "schedule": {
      "cronSchedule": "* * * * *",
      "cronTimeZone": "Asia/Tokyo",
      "operations": [
        {
          "appConfigs": {
            "defaultAttributeValues": {
              "userId": "external_service_user_5678"
            }
          },
          "operationName": "users",
          "parameters": [
            {
              "name": "user_id",
              "value": "5678"
            }
          ]
        }
      ]
    }
  }
]

401 Authorization is required to access this resource.

Content type: application/json

PropertyTypeRequiredConstraintsDescription
dataobjectNoread-only (server-generated)Any relevant data related to error.
reasonstringYesread-only (server-generated)Reason of error.

403 Request failed because of denied permission.

Content type: application/json

PropertyTypeRequiredConstraintsDescription
dataobjectNoread-only (server-generated)Any relevant data related to error.
reasonstringYesread-only (server-generated)Reason of error.

429 Request failed because of rate limit.

Content type: application/json

PropertyTypeRequiredConstraintsDescription
dataobjectNoread-only (server-generated)Any relevant data related to error.
reasonstringYesread-only (server-generated)Reason of error.

500 An unexpected error has occurred.

Content type: application/json

PropertyTypeRequiredConstraintsDescription
dataobjectNoread-only (server-generated)Any relevant data related to error.
reasonstringYesread-only (server-generated)Reason of error.

503 The service is temporarily unavailable.

Content type: application/json

PropertyTypeRequiredConstraintsDescription
dataobjectNoread-only (server-generated)Any relevant data related to error.
reasonstringYesread-only (server-generated)Reason of error.