GUID Forge: Bulk UUID & ID Generator avatar

GUID Forge: Bulk UUID & ID Generator

Pricing

from $0.01 / 1,000 results

Go to Apify Store
GUID Forge: Bulk UUID & ID Generator

GUID Forge: Bulk UUID & ID Generator

Generate UUID v1/v4/v5 and custom IDs (alphanumeric or sequential, timestamped) at high speed. Outputs to dataset

Pricing

from $0.01 / 1,000 results

Rating

5.0

(1)

Developer

Inus Grobler

Inus Grobler

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

0

Monthly active users

17 days ago

Last modified

Share

Generate UUIDs, GUIDs, and custom IDs in bulk on Apify. Choose random UUIDs, deterministic UUID v5 values, custom alphanumeric IDs, or padded sequences, then download one clean identifier per dataset row.

Why use this bulk UUID and GUID generator?

  • Generate up to 5,000,000 IDs in one run.
  • Supports UUID v1, UUID v4, UUID v5, alphanumeric IDs, and sequential IDs.
  • Add optional prefix and suffix to every identifier.
  • Output is clean JSON in the default Apify dataset: { "guid": "..." }.
  • UUID v5 supports deterministic name templating for repeatable IDs.

Supported Types

  • v1 / uuidv1: time-based UUIDs
  • v4 / uuidv4: random UUIDs (default)
  • v5 / uuidv5: namespace + name-based deterministic UUIDs
  • alphanumeric: random IDs from a custom charset
  • sequential: incrementing numeric IDs with optional timestamp prefix

How to generate UUIDs in Apify Console

  1. Open the actor and click Start.
  2. Pick your type (for example v4, v5, alphanumeric, or sequential).
  3. Set count.
  4. Optionally set prefix / suffix and type-specific fields.
  5. Run the actor and open the Dataset tab to download results.

For a quick batch of 1,000 random UUID v4 values:

{
"count": 1000,
"type": "v4"
}

Input Reference

  • count (integer): number of IDs to generate. Min 1, max 5000000, default 5.
  • type (string): v1, v4, v5, alphanumeric, sequential. Default v4.
  • prefix (string): optional text prepended to every ID.
  • suffix (string): optional text appended to every ID.
  • validateUnique (boolean): in-memory duplicate validation. Default false, max supported 1000000 items when enabled.
  • batchSize (integer): dataset push chunk size. Min 1, max 50000, default 5000.

UUID v5 fields (type: "v5")

  • uuidV5Name (string): base name input. If omitted, default is guid-forge.
  • uuidV5Namespace (string): DNS, URL, or a UUID namespace string. If omitted or invalid, default is DNS.
  • uuidV5NameTemplate (string, optional): template tokens:
    • {{name}}
    • {{index}} or {{n}} (1-based)
    • {{index0}} (0-based)

Alphanumeric fields (type: "alphanumeric")

  • alphanumericLength (integer): min 1, max 10000, default 16.
  • alphanumericCharset (string): allowed characters. Default base62 charset.

Sequential fields (type: "sequential")

  • sequentialStart (integer): default 1.
  • sequentialStep (integer): default 1, cannot be 0.
  • sequentialPadding (integer): min 0, max 50, default 6.
  • sequentialTimestampPrefix (boolean): default true.
  • sequentialTimestampUnit (string): ms or s, default ms.
  • sequentialDelimiter (string): default -.

Example Inputs

1) UUID v4 (random GUIDs)

{
"count": 1000,
"type": "v4"
}

2) UUID v5 (deterministic)

{
"count": 3,
"type": "v5",
"uuidV5Name": "customer",
"uuidV5Namespace": "DNS",
"uuidV5NameTemplate": "{{name}}-{{index}}"
}

3) Alphanumeric IDs with prefix

{
"count": 10,
"type": "alphanumeric",
"alphanumericLength": 12,
"prefix": "ORD-"
}

4) Sequential IDs for order numbers

{
"count": 5,
"type": "sequential",
"sequentialStart": 1000,
"sequentialStep": 1,
"sequentialPadding": 8,
"sequentialTimestampPrefix": false,
"prefix": "INV-"
}

Output Format

Each dataset item has this shape:

{
"guid": "a17e8844-f7e1-4bd1-913c-f68bb4a1ad4b"
}

Performance and Reliability Notes

  • Use larger batchSize values for better throughput.
  • Keep validateUnique disabled for very large runs to reduce memory usage.
  • Sequential generation enforces JavaScript safe-integer bounds to prevent precision errors.
  • UUID v5 runs continue even if uuidV5Name / uuidV5Namespace are missing; safe defaults are applied automatically.

Common Use Cases

  • Bulk primary keys for database seeding
  • Stable deterministic IDs for ETL joins (UUID v5)
  • Order, invoice, or ticket ID generation
  • Test data generation for QA and CI pipelines
  • API reference IDs and internal code generation

Existing API aliases

The actor still accepts legacy aliases:

  • guidType as alias for type
  • name as alias for uuidV5Name
  • namespace as alias for uuidV5Namespace

Run GUID Forge with Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("thescrapelab/guid-forge-bulk-uuid-id-generator").call(
run_input={
"count": 1000,
"type": "v4",
"prefix": "customer-",
}
)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["guid"])

You can schedule generation, trigger it through the Apify API, or connect the dataset to another Apify integration.

Pricing and cost control

Cost grows mainly with the number of identifiers written to the dataset. Use a small count while testing, and request only the batch you need. Very large exports take longer and consume more dataset storage. Apify shows the active Store price and platform-usage estimate before a run starts.

Limits and caveats

  • A run can generate at most 5,000,000 rows.
  • validateUnique checks duplicates only within the current run and is limited to 1,000,000 generated items.
  • UUID v5 deliberately returns the same value for the same namespace and name. Change the name template when you need distinct rows.
  • Sequential IDs can overlap across separate runs if you reuse the same start, step, and formatting. Keep the timestamp prefix enabled or manage ranges yourself.
  • Generated identifiers are not automatically passwords, access tokens, or other credentials. Apply the security controls required by your application.

Troubleshooting

  • Fewer rows than expected: check the run status and make sure count is within the 5,000,000-row limit.
  • UUID v5 values repeat: make uuidV5NameTemplate vary with {{index}} or {{index0}}.
  • Sequential values collide with an older batch: choose a new range or keep sequentialTimestampPrefix enabled.
  • A large run uses too much memory: disable validateUnique, keep the default batch size, or split the export into smaller runs.
  • Alphanumeric IDs look too short: increase alphanumericLength and confirm the custom charset contains enough distinct characters.

Support

If a valid configuration fails, open the Actor's Issues tab and include the run ID, requested ID type, count, and a sanitized input.