{
  "service": "html_to_image",
  "displayName": "HTML to Image",
  "categories": [
    "Developer Tools",
    "Design & Media"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Key",
      "placeholder": "your_api_key",
      "description": "HTML to Image API key sent in the X-API-Key header."
    }
  ],
  "homepageUrl": "https://html2img.com",
  "actions": [
    {
      "id": "html_to_image.capture_website_screenshot",
      "service": "html_to_image",
      "name": "capture_website_screenshot",
      "description": "Capture a public webpage with HTML to Image and return the generated screenshot URL.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "description": "The public webpage URL to capture, including the protocol.",
            "format": "uri"
          },
          "selector": {
            "type": "string",
            "minLength": 1,
            "description": "A CSS selector for capturing a specific element on the target page."
          },
          "css": {
            "type": "string",
            "description": "Additional CSS to inject before the image is rendered."
          },
          "width": {
            "type": "integer",
            "minimum": 1,
            "maximum": 5000,
            "description": "The viewport width in pixels from 1 to 5000."
          },
          "height": {
            "type": "integer",
            "minimum": 1,
            "maximum": 5000,
            "description": "The viewport height in pixels from 1 to 5000."
          },
          "fullpage": {
            "type": "boolean",
            "description": "Whether to capture the full page height instead of only the viewport height."
          },
          "dpi": {
            "type": "integer",
            "minimum": 1,
            "maximum": 4,
            "description": "The device pixel ratio from 1 to 4. When fullpage is true, HTML to Image forces this to 1."
          },
          "wait_for_selector": {
            "type": "string",
            "minLength": 1,
            "description": "A CSS selector that must appear in the DOM before capture starts."
          },
          "ms_delay": {
            "type": "integer",
            "minimum": 0,
            "maximum": 5000,
            "description": "A fixed delay in milliseconds before capture, from 0 to 5000."
          }
        },
        "additionalProperties": false,
        "required": [
          "url"
        ],
        "description": "Input parameters for synchronously capturing a website screenshot."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean",
            "description": "Whether HTML to Image reported the request as successful."
          },
          "credits_remaining": {
            "type": "integer",
            "description": "The remaining image credits after the request."
          },
          "id": {
            "type": "string",
            "description": "The HTML to Image image identifier."
          },
          "url": {
            "type": "string",
            "description": "The generated image URL.",
            "format": "uri"
          }
        },
        "additionalProperties": false,
        "required": [
          "success",
          "id",
          "url"
        ],
        "description": "The synchronous HTML to Image result returned by the connector."
      }
    },
    {
      "id": "html_to_image.convert_html_to_image",
      "service": "html_to_image",
      "name": "convert_html_to_image",
      "description": "Convert raw HTML and optional CSS to an image with HTML to Image and return the generated image URL.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "html": {
            "type": "string",
            "minLength": 1,
            "description": "The HTML content to render. This can include inline CSS and JavaScript."
          },
          "css": {
            "type": "string",
            "description": "Additional CSS to inject before the image is rendered."
          },
          "width": {
            "type": "integer",
            "minimum": 1,
            "maximum": 5000,
            "description": "The viewport width in pixels from 1 to 5000."
          },
          "height": {
            "type": "integer",
            "minimum": 1,
            "maximum": 5000,
            "description": "The viewport height in pixels from 1 to 5000."
          },
          "fullpage": {
            "type": "boolean",
            "description": "Whether to capture the full page height instead of only the viewport height."
          },
          "dpi": {
            "type": "integer",
            "minimum": 1,
            "maximum": 4,
            "description": "The device pixel ratio from 1 to 4. When fullpage is true, HTML to Image forces this to 1."
          },
          "wait_for_selector": {
            "type": "string",
            "minLength": 1,
            "description": "A CSS selector that must appear in the DOM before capture starts."
          },
          "ms_delay": {
            "type": "integer",
            "minimum": 0,
            "maximum": 5000,
            "description": "A fixed delay in milliseconds before capture, from 0 to 5000."
          }
        },
        "additionalProperties": false,
        "required": [
          "html"
        ],
        "description": "Input parameters for synchronously converting raw HTML and CSS into an image."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean",
            "description": "Whether HTML to Image reported the request as successful."
          },
          "credits_remaining": {
            "type": "integer",
            "description": "The remaining image credits after the request."
          },
          "id": {
            "type": "string",
            "description": "The HTML to Image image identifier."
          },
          "url": {
            "type": "string",
            "description": "The generated image URL.",
            "format": "uri"
          }
        },
        "additionalProperties": false,
        "required": [
          "success",
          "id",
          "url"
        ],
        "description": "The synchronous HTML to Image result returned by the connector."
      }
    }
  ]
}
