{
  "service": "oomnitza",
  "displayName": "Oomnitza",
  "categories": [
    "Productivity",
    "Data"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Token",
      "placeholder": "OOMNITZA_API_TOKEN",
      "description": "Oomnitza API token sent in the Authorization2 header. Create it from Configuration > Security > API tokens in your Oomnitza instance: https://oomnitza.zendesk.com/hc/en-us/articles/360049276794.",
      "extraFields": [
        {
          "key": "baseUrl",
          "label": "Instance Base URL",
          "inputType": "text",
          "required": true,
          "secret": false,
          "placeholder": "https://acme.oomnitza.com",
          "description": "The root URL of your Oomnitza instance, such as https://acme.oomnitza.com. API tokens are specific to one Oomnitza instance."
        }
      ]
    }
  ],
  "homepageUrl": "https://www.oomnitza.com",
  "actions": [
    {
      "id": "oomnitza.get_asset",
      "service": "oomnitza",
      "name": "get_asset",
      "description": "Retrieve one Oomnitza asset by ID.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 1,
            "description": "Oomnitza asset identifier."
          },
          "includeDeleted": {
            "type": "boolean",
            "description": "Whether deleted records should be included."
          }
        },
        "additionalProperties": false,
        "required": [
          "id"
        ],
        "description": "Oomnitza asset lookup input."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "asset": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "Oomnitza record with tenant-defined fields."
          },
          "raw": {
            "description": "Raw Oomnitza response payload."
          }
        },
        "additionalProperties": false,
        "required": [
          "asset",
          "raw"
        ],
        "description": "Oomnitza asset lookup result."
      }
    },
    {
      "id": "oomnitza.get_user",
      "service": "oomnitza",
      "name": "get_user",
      "description": "Retrieve one Oomnitza user by username.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "username": {
            "type": "string",
            "minLength": 1,
            "description": "Oomnitza username to retrieve."
          },
          "includeDeleted": {
            "type": "boolean",
            "description": "Whether deleted records should be included."
          }
        },
        "additionalProperties": false,
        "required": [
          "username"
        ],
        "description": "Oomnitza user lookup input."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "user": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "Oomnitza record with tenant-defined fields."
          },
          "raw": {
            "description": "Raw Oomnitza response payload."
          }
        },
        "additionalProperties": false,
        "required": [
          "user",
          "raw"
        ],
        "description": "Oomnitza user lookup result."
      }
    },
    {
      "id": "oomnitza.identify",
      "service": "oomnitza",
      "name": "identify",
      "description": "Validate the Oomnitza connection and return the configured instance metadata.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "description": "This action does not require any input fields."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "baseUrl": {
            "type": "string",
            "description": "Normalized Oomnitza instance base URL."
          },
          "host": {
            "type": "string",
            "description": "Oomnitza instance host."
          },
          "validationEndpoint": {
            "type": "string",
            "description": "Endpoint used to validate the API token."
          }
        },
        "additionalProperties": false,
        "required": [
          "baseUrl",
          "host",
          "validationEndpoint"
        ],
        "description": "Oomnitza connection metadata."
      }
    },
    {
      "id": "oomnitza.list_assets",
      "service": "oomnitza",
      "name": "list_assets",
      "description": "List Oomnitza assets using the v3 assets endpoint.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "limit": {
            "type": "integer",
            "minimum": 1,
            "description": "Maximum number of records to return."
          },
          "skip": {
            "type": "integer",
            "minimum": 0,
            "description": "Number of records to skip before returning results."
          },
          "filter": {
            "type": "string",
            "minLength": 1,
            "description": "Oomnitza API filter expression."
          },
          "sortBy": {
            "type": "string",
            "minLength": 1,
            "description": "Oomnitza sort expression."
          },
          "fields": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "Oomnitza field name."
            },
            "description": "Oomnitza field names to include in the response."
          },
          "includeDeleted": {
            "type": "boolean",
            "description": "Whether deleted records should be included."
          }
        },
        "additionalProperties": false,
        "description": "Optional filters and pagination for Oomnitza list endpoints."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "assets": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "Oomnitza record with tenant-defined fields."
            },
            "description": "Oomnitza asset records."
          },
          "raw": {
            "description": "Raw Oomnitza response payload."
          }
        },
        "additionalProperties": false,
        "required": [
          "assets",
          "raw"
        ],
        "description": "Oomnitza assets list result."
      }
    },
    {
      "id": "oomnitza.list_users",
      "service": "oomnitza",
      "name": "list_users",
      "description": "List Oomnitza users using the v3 users endpoint.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "limit": {
            "type": "integer",
            "minimum": 1,
            "description": "Maximum number of records to return."
          },
          "skip": {
            "type": "integer",
            "minimum": 0,
            "description": "Number of records to skip before returning results."
          },
          "filter": {
            "type": "string",
            "minLength": 1,
            "description": "Oomnitza API filter expression."
          },
          "sortBy": {
            "type": "string",
            "minLength": 1,
            "description": "Oomnitza sort expression."
          },
          "fields": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "Oomnitza field name."
            },
            "description": "Oomnitza field names to include in the response."
          },
          "includeDeleted": {
            "type": "boolean",
            "description": "Whether deleted records should be included."
          }
        },
        "additionalProperties": false,
        "description": "Optional filters and pagination for Oomnitza list endpoints."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "users": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "Oomnitza record with tenant-defined fields."
            },
            "description": "Oomnitza user records."
          },
          "raw": {
            "description": "Raw Oomnitza response payload."
          }
        },
        "additionalProperties": false,
        "required": [
          "users",
          "raw"
        ],
        "description": "Oomnitza users list result."
      }
    }
  ]
}
