{
  "service": "short_menu",
  "displayName": "Short Menu",
  "categories": [
    "Marketing",
    "Data"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Key",
      "placeholder": "SHORT_MENU_API_KEY",
      "description": "Short Menu API key sent with the x-api-key header. Create it in the official API Keys settings page: https://app.shortmenu.com/settings/api-keys."
    }
  ],
  "homepageUrl": "https://shortmenu.com",
  "actions": [
    {
      "id": "short_menu.create_link",
      "service": "short_menu",
      "name": "create_link",
      "description": "Create a Short Menu short link.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "destinationUrl": {
            "type": "string",
            "description": "Destination URL to shorten.",
            "format": "uri"
          },
          "domain": {
            "type": "string",
            "minLength": 1,
            "description": "Domain name to use for the short link."
          },
          "slug": {
            "type": "string",
            "description": "Custom slug to assign to the short link. Pass an empty string to let Short Menu generate a random slug."
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "Short Menu tag identifier, when available."
                },
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "description": "Tag name assigned to the short link."
                }
              },
              "additionalProperties": false,
              "required": [
                "name"
              ],
              "description": "Tag object used by the Short Menu API."
            },
            "description": "Tags to attach when creating the short link."
          }
        },
        "additionalProperties": false,
        "required": [
          "destinationUrl",
          "domain",
          "tags"
        ],
        "description": "Input payload for creating a Short Menu short link."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 1,
            "description": "Short Menu short link identifier."
          },
          "createdAt": {
            "type": "string",
            "description": "Timestamp when the short link was created."
          },
          "destinationUrl": {
            "type": "string",
            "minLength": 1,
            "description": "Destination URL that the short link redirects to."
          },
          "title": {
            "type": "string",
            "description": "Resolved title returned by Short Menu, when available."
          },
          "slug": {
            "type": "string",
            "minLength": 1,
            "description": "Path slug used by the short link."
          },
          "domain": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "minLength": 1,
                "description": "Short Menu domain identifier."
              },
              "name": {
                "type": "string",
                "minLength": 1,
                "description": "Domain name used for the short link."
              }
            },
            "additionalProperties": false,
            "description": "Short Menu domain object."
          },
          "shortUrl": {
            "type": "string",
            "minLength": 1,
            "description": "Full short URL returned by Short Menu."
          },
          "clickCount": {
            "type": "number",
            "description": "Click count returned by Short Menu, when available."
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "Short Menu tag identifier, when available."
                },
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "description": "Tag name assigned to the short link."
                }
              },
              "additionalProperties": false,
              "required": [
                "name"
              ],
              "description": "Tag object used by the Short Menu API."
            },
            "description": "Tags assigned to the short link."
          }
        },
        "additionalProperties": false,
        "required": [
          "id",
          "createdAt",
          "destinationUrl",
          "slug",
          "domain",
          "shortUrl",
          "tags"
        ],
        "description": "Short Menu short link object."
      }
    },
    {
      "id": "short_menu.delete_link",
      "service": "short_menu",
      "name": "delete_link",
      "description": "Delete an existing Short Menu short link.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 1,
            "description": "Identifier of the short link to delete."
          }
        },
        "additionalProperties": false,
        "description": "Input payload for deleting a Short Menu short link."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 1,
            "description": "Identifier of the short link that was deleted."
          },
          "deleted": {
            "type": "boolean",
            "description": "Whether the short link was deleted successfully."
          }
        },
        "additionalProperties": false,
        "description": "Normalized delete result returned after removing a Short Menu short link."
      }
    },
    {
      "id": "short_menu.update_link",
      "service": "short_menu",
      "name": "update_link",
      "description": "Update an existing Short Menu short link.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 1,
            "description": "Identifier of the short link to update."
          },
          "destinationUrl": {
            "type": "string",
            "description": "Updated destination URL for the short link.",
            "format": "uri"
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "Short Menu tag identifier, when available."
                },
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "description": "Tag name assigned to the short link."
                }
              },
              "additionalProperties": false,
              "required": [
                "name"
              ],
              "description": "Tag object used by the Short Menu API."
            },
            "description": "Replacement tag list for the short link."
          }
        },
        "additionalProperties": false,
        "required": [
          "id"
        ],
        "description": "Input payload for updating a Short Menu short link."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 1,
            "description": "Short Menu short link identifier."
          },
          "createdAt": {
            "type": "string",
            "description": "Timestamp when the short link was created."
          },
          "destinationUrl": {
            "type": "string",
            "minLength": 1,
            "description": "Destination URL that the short link redirects to."
          },
          "title": {
            "type": "string",
            "description": "Resolved title returned by Short Menu, when available."
          },
          "slug": {
            "type": "string",
            "minLength": 1,
            "description": "Path slug used by the short link."
          },
          "domain": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "minLength": 1,
                "description": "Short Menu domain identifier."
              },
              "name": {
                "type": "string",
                "minLength": 1,
                "description": "Domain name used for the short link."
              }
            },
            "additionalProperties": false,
            "description": "Short Menu domain object."
          },
          "shortUrl": {
            "type": "string",
            "minLength": 1,
            "description": "Full short URL returned by Short Menu."
          },
          "clickCount": {
            "type": "number",
            "description": "Click count returned by Short Menu, when available."
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "Short Menu tag identifier, when available."
                },
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "description": "Tag name assigned to the short link."
                }
              },
              "additionalProperties": false,
              "required": [
                "name"
              ],
              "description": "Tag object used by the Short Menu API."
            },
            "description": "Tags assigned to the short link."
          }
        },
        "additionalProperties": false,
        "required": [
          "id",
          "createdAt",
          "destinationUrl",
          "slug",
          "domain",
          "shortUrl",
          "tags"
        ],
        "description": "Short Menu short link object."
      }
    }
  ]
}
