# Smartproxy

Smartproxy (now Decodo) offers a comprehensive suite of proxy and web scraping solutions, providing users with access to a vast network of residential, datacenter, ISP, and mobile proxies, along with scraping APIs for efficient data collection.

- **Category:** ai web scraping
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 6
- **Triggers:** 0
- **Slug:** `SMARTPROXY`
- **Version:** 20260223_00

## Tools

### Delete Whitelisted IP

**Slug:** `SMARTPROXY_DELETE_WHITELISTED_IP`

Tool to delete a specified whitelisted IP by its ID. Use when you need to remove an IP address from the whitelist. Returns success confirmation on completion.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the whitelisted IP to delete. You can retrieve available IDs using the Get Whitelisted IPs action. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Generate Back Connect Endpoints

**Slug:** `SMARTPROXY_GENERATE_BACKCONNECT_ENDPOINTS`

Tool to generate custom back connect endpoints for Residential subscription proxies. Use when you need to create proxy connection strings with specific configuration parameters like session type, location, and authentication credentials.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ip` | string | No | IP address to be used instead of domain. Required if domain is 'ip'. Must contain port at the end (e.g., '1.1.1.1:7000'). |
| `city` | string | No | Full city name in lowercase with underscore instead of space (e.g., 'new_orleans'). |
| `page` | integer | No | Page number for pagination of routes. Minimum value is 1. Default is 1. |
| `count` | integer | No | Count of routes that will be generated and returned. Minimum value is 1. Default is 10. |
| `state` | string | No | State selection if country is USA ('us'). Provide full state name with underscore instead of space (e.g., 'new_york'). |
| `domain` | string | No | Domain to be used for routes. Default is 'gate.decodo.com'. Use 'ip' to specify an IP address instead. |
| `country` | string | No | Country Alpha2 code in lower case (e.g., 'us', 'gb'). |
| `password` | string | Yes | Password for authorization. This parameter is required. |
| `protocol` | string ("http" | "https") | No | Protocol to be used for proxy connections. Default is 'http'. |
| `username` | string | Yes | Username for authorization. This parameter is required. |
| `line_break` | string ("\n" | "\r\n" | "\r" | "\t") | No | Line break type for text responses. |
| `session_time` | integer | No | Session time in minutes, range is 1-1440 (inclusive). This parameter is required if session_type is 'sticky'. Default is 10. |
| `session_type` | string ("sticky" | "random") | No | Session type to use. Choose 'sticky' for sticky sessions or 'random' for rotating sessions. Default is 'sticky'. |
| `output_format` | string ("protocol:auth@endpoint" | "endpoint:auth" | "auth@endpoint") | No | Output format type. Default is 'protocol:auth@endpoint'. |
| `response_format` | string ("json" | "txt" | "html") | No | Response type that will be returned. Can be 'json', 'txt', or 'html'. Default is 'json'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Generate Custom Endpoints

**Slug:** `SMARTPROXY_GENERATE_CUSTOM_ENDPOINTS`

Tool to generate custom proxy endpoints for Residential and Datacenter Pay per GB subscriptions. Use when you need to create configured proxy endpoints with specific authentication, session, and location parameters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ip` | string | No | IP address to use instead of domain. REQUIRED when domain is 'ip'. |
| `page` | integer | No | Pagination page number (minimum 1). Maximum depends on count and location. Default is 1. |
| `count` | integer | No | Number of routes to generate (minimum 1). Maximum depends on page and location. Default is 10. |
| `domain` | string | No | Domain for proxy routes. Use 'ip' to use IP address instead of domain. Default is 'decodo.com'. |
| `location` | string | No | Geographic location: country Alpha-2 code, city, or state name in lowercase. Use 'random' for any location. Default is 'random'. |
| `password` | string | No | Password for authorization. REQUIRED when auth_type is 'basic'. |
| `username` | string | No | Username for authorization. REQUIRED when auth_type is 'basic'. |
| `auth_type` | string ("basic" | "whitelist") | No | Authentication method for proxy endpoints. |
| `line_break` | string ("\n" | "\r\n" | "\r" | "\t") | No | Line break types for text responses. |
| `proxy_type` | string | No | Proxy type for route generation. Default and only option is 'residential_proxies'. |
| `session_time` | integer | No | Session duration in minutes (1-1440 inclusive). REQUIRED when proxy_type is 'residential_proxies', auth_type is 'basic', and session_type is 'sticky'. Default is 10. |
| `session_type` | string ("sticky" | "random") | No | Session type for proxy connections. |
| `output_format` | string ("protocol:auth@endpoint" | "endpoint:auth" | "auth@endpoint") | No | Output format for generated proxy endpoints. |
| `response_format` | string ("json" | "txt" | "html") | No | Response format type. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get API Key

**Slug:** `SMARTPROXY_GET_API_KEY`

Tool to instruct how to obtain Smartproxy API key. Use when you need to authenticate API requests but don't have your key (manual dashboard process).

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Endpoints By Type

**Slug:** `SMARTPROXY_GET_ENDPOINTS_BY_TYPE`

Tool to retrieve proxy endpoints by type (random or sticky) for Residential subscription. Returns location, hostname, and port_range for each endpoint. Use when you need specific endpoint configuration for a particular proxy type.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `type` | string ("random" | "sticky") | Yes | Type of proxy endpoint to retrieve. 'random' returns endpoints with rotating IPs, 'sticky' returns endpoints with session-based IPs. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Endpoints and Ports

**Slug:** `SMARTPROXY_LIST_ENDPOINTS_AND_PORTS`

Tool to retrieve all available proxy endpoints and corresponding ports. Use when you need to fetch the full inventory of Smartproxy endpoints.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
