# SHA256 Hash Generator (`rixin/sha256-hash-generator`) Actor

From $0.1/1k requests. Generate SHA256 hashes from text or files instantly. Perfect for data integrity checks, deduplication, and cache key generation. Batch process multiple items in one run. Supports text strings and files. Fast, reliable, and cryptographically secure hashing solution.

- **URL**: https://apify.com/rixin/sha256-hash-generator.md
- **Developed by:** [Rixin Sc](https://apify.com/rixin) (community)
- **Categories:** Automation, Developer tools, Integrations
- **Stats:** 2 total users, 0 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.01 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## SHA256 Hash Generator

Generate SHA256 hashes from text strings or files. Fast, reliable, and easy to use for data integrity verification and fingerprinting.

### What does SHA256 Hash Generator do?

SHA256 Hash Generator creates SHA256 cryptographic hashes from your input data. You can hash plain text strings or files from any URL. The actor processes multiple items in a single run and outputs the hash for each item.

- **Text Hashing**: Hash any plain text string directly
- **File Hashing**: Hash files from any URL (direct download links)
- **Batch Processing**: Process multiple items in a single run
- **Detailed Output**: Get hash, input size, and processing timestamp for each item

### Use Cases

- **Data Integrity**: Verify file integrity by comparing SHA256 checksums
- **Deduplication**: Identify duplicate content by comparing hashes
- **Caching Keys**: Generate cache keys from content
- **File Fingerprinting**: Create unique identifiers for files
- **Content Verification**: Ensure data hasn't been modified
- **Security**: SHA256 is cryptographically secure for most applications

### Input

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `textInputs` | array | No | List of text strings to hash |
| `fileUrls` | array | No | List of file URLs to download and hash (supports advanced HTTP options) |

#### Example Input (Simple)

```json
{
    "textInputs": ["Hello World", "Another string to hash"],
    "fileUrls": [
        { "url": "https://example.com/file.txt" }
    ]
}
````

#### Advanced File URL Options

The `fileUrls` field supports full HTTP request configuration for each URL:

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `url` | string | Yes | The URL to fetch |
| `method` | string | No | HTTP method (GET, POST, PUT, etc.). Default: GET |
| `headers` | object | No | Custom HTTP headers to send with the request |
| `payload` | string | No | Request body for POST/PUT requests |
| `userData` | object | No | Custom data passed through for your reference |

#### Example Input (Advanced)

```json
{
    "textInputs": ["Hello World"],
    "fileUrls": [
        { "url": "https://example.com/public-file.txt" },
        {
            "url": "https://api.example.com/protected-file",
            "method": "GET",
            "headers": {
                "Authorization": "Bearer your-token-here",
                "X-Custom-Header": "custom-value"
            }
        },
        {
            "url": "https://api.example.com/generate-data",
            "method": "POST",
            "payload": "{\"format\": \"json\"}",
            "headers": {
                "Content-Type": "application/json"
            }
        }
    ]
}
```

### Output

Each processed item produces a dataset record with:

| Field | Description |
|-------|-------------|
| `input` | The original input (text preview or file URL) |
| `inputType` | Type of input: "text" or "file" |
| `sha256Hash` | The 64-character SHA256 hash in lowercase hex |
| `inputSizeBytes` | Size of input data in bytes |
| `processedAt` | ISO timestamp of when hash was generated |
| `error` | Error message if processing failed, null otherwise |

#### Example Output

```json
{
    "input": "Hello World",
    "inputType": "text",
    "sha256Hash": "a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e",
    "inputSizeBytes": 11,
    "processedAt": "2024-01-15T10:30:00.000Z",
    "error": null
}
```

### Pricing

This actor uses pay-per-event pricing:

| Event | Price | Description |
|-------|-------|-------------|
| Text Processed | $0.0001 | Charged for each text string hashed |
| File Processed | $0.0002 | Charged for each file fetched and hashed |

**Example costs:**

- 1,000 text items: $0.10
- 1,000 file items: $0.20
- Mixed 500 text + 500 files: $0.15

### Integrations

Works with all Apify integrations:

- **Apify API**: Trigger runs programmatically
- **Webhooks**: Get notified when runs complete
- **Zapier/Make**: Connect with automation workflows

### FAQ

**Q: Is SHA256 secure for passwords?**
A: SHA256 alone is not recommended for password hashing. Use dedicated password hashing algorithms like bcrypt or Argon2 for passwords.

**Q: What's the maximum file size?**
A: Files are limited by available memory. The actor uses 128-256 MB, supporting files up to ~200 MB.

**Q: Can I hash files from any URL?**
A: Yes! Any publicly accessible URL is supported. The file will be downloaded and hashed.

**Q: What format is the hash output?**
A: Hashes are returned as 64-character lowercase hexadecimal strings.

**Q: How does SHA256 compare to MD5?**
A: SHA256 produces a 256-bit (64-character hex) hash vs MD5's 128-bit (32-character hex). SHA256 is cryptographically stronger and recommended for security-sensitive applications.

# Actor input Schema

## `textInputs` (type: `array`):

Enter text strings to hash. Add each string separately using the + button.

## `fileUrls` (type: `array`):

URLs to files to hash. Supports GET (default) and other HTTP methods with custom headers and payload.

## Actor input object example

```json
{
  "textInputs": [
    "Hello World",
    "The quick brown fox jumps over the lazy dog"
  ],
  "fileUrls": []
}
```

# Actor output Schema

## `overview` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "textInputs": [
        "Hello World",
        "The quick brown fox jumps over the lazy dog"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("rixin/sha256-hash-generator").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "textInputs": [
        "Hello World",
        "The quick brown fox jumps over the lazy dog",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("rixin/sha256-hash-generator").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "textInputs": [
    "Hello World",
    "The quick brown fox jumps over the lazy dog"
  ]
}' |
apify call rixin/sha256-hash-generator --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=rixin/sha256-hash-generator",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "SHA256 Hash Generator",
        "description": "From $0.1/1k requests. Generate SHA256 hashes from text or files instantly. Perfect for data integrity checks, deduplication, and cache key generation. Batch process multiple items in one run. Supports text strings and files. Fast, reliable, and cryptographically secure hashing solution.",
        "version": "0.0",
        "x-build-id": "HGhWPkWZl42K7gHah"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/rixin~sha256-hash-generator/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-rixin-sha256-hash-generator",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/rixin~sha256-hash-generator/runs": {
            "post": {
                "operationId": "runs-sync-rixin-sha256-hash-generator",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/rixin~sha256-hash-generator/run-sync": {
            "post": {
                "operationId": "run-sync-rixin-sha256-hash-generator",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "textInputs": {
                        "title": "Text Inputs",
                        "type": "array",
                        "description": "Enter text strings to hash. Add each string separately using the + button.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "fileUrls": {
                        "title": "File URLs",
                        "type": "array",
                        "description": "URLs to files to hash. Supports GET (default) and other HTTP methods with custom headers and payload.",
                        "default": [],
                        "items": {
                            "type": "object",
                            "required": [
                                "url"
                            ],
                            "properties": {
                                "url": {
                                    "type": "string",
                                    "title": "URL of a web page",
                                    "format": "uri"
                                }
                            }
                        }
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
