Keys

Create, look up, edit, reset and export keys, and ban devices.

Each key belongs to one software and has a duration and a device limit. Time starts at its first successful check.

Keep in mind

Keys are addressed by value
Actions on one key take the full key in key. Keys have no numeric id in the API.
Durations
Days, a negative number for hours, or lifetime for a key that never expires.
Key format
Patterns can use {RANDOM:N}, {NAME}, {DURATION}, {UPLINK} and {GAME}.
Export is a file
export-keys answers with a txt, csv or json file instead of the JSON envelope.

List keys

POST https://dev.mod.wtf/api/v2/action

methodget-keys

List software keys.

Body

  • soft_id integer required

    ID of a software you own

  • q string optional

    Substring search

  • status optional

    Filter: 1 normal, 0 blocked

  • active boolean optional

    Filter: 1 active, 0 paused

  • game string optional

    Filter by game

  • key_type string optional

    Filter by type: APK or INJECTOR

  • limit integer optional

    Number of records to return, 1..200, default 50

  • offset integer optional

    Number of records to skip for pagination

Errors it can return

POST /api/v2/action HTTP/1.1
Host: dev.mod.wtf
Content-Type: application/json
Accept: application/json

{
    "api_key": "YOUR_API_KEY",
    "method": "get-keys",
    "soft_id": 123
}

Create keys

POST https://dev.mod.wtf/api/v2/action

methodcreate-keys

Generate 1 to 1000 keys. Uses the software key_format unless overridden.

Body

  • soft_id integer required

    ID of a software you own

  • game string required

    Game identifier, for example standoff2

  • duration integer | string required

    Days, a negative number for hours, or lifetime for a key that never expires

  • max_devices integer optional

    Integer of at least 1, default 1

  • key_type string optional

    APK or INJECTOR, default APK

  • count integer optional

    Default 1, maximum 1000

  • single boolean optional

    Single-use key: it is deleted right after its first successful binding

  • key_format string optional

    Pattern using {RANDOM:N}, {NAME}, {DURATION}, {UPLINK}, {GAME}

  • hwid_reset_limit integer optional

    -1 for unlimited, or 0 to 1000

Errors it can return

POST /api/v2/action HTTP/1.1
Host: dev.mod.wtf
Content-Type: application/json
Accept: application/json

{
    "api_key": "YOUR_API_KEY",
    "method": "create-keys",
    "soft_id": 123,
    "game": "standoff2",
    "duration": 7,
    "count": 5,
    "max_devices": 1
}

Get key

POST https://dev.mod.wtf/api/v2/action

methodget-key

Get one key by its user_key string.

Body

  • key string required

    License key string (user_key)

  • soft_id integer required

    ID of a software you own

Errors it can return

POST /api/v2/action HTTP/1.1
Host: dev.mod.wtf
Content-Type: application/json
Accept: application/json

{
    "api_key": "YOUR_API_KEY",
    "method": "get-key",
    "soft_id": 123,
    "key": "KEY-EXAMPLE"
}

Update key

POST https://dev.mod.wtf/api/v2/action

methodedit-key

Update one key.

Body

  • key string required

    License key string (user_key)

  • soft_id integer required

    ID of a software you own

  • duration integer | string optional

    Days, a negative number for hours, or lifetime

  • max_devices integer optional

    Integer of at least 1

  • hwid_reset_limit integer optional

    -1 for unlimited, or 0 to 1000

  • active boolean optional

    True resumes the key, false pauses it

  • status optional

    1 or true unblocks the key, 0 or false blocks it

  • key_type string optional

    APK or INJECTOR

Errors it can return

POST /api/v2/action HTTP/1.1
Host: dev.mod.wtf
Content-Type: application/json
Accept: application/json

{
    "api_key": "YOUR_API_KEY",
    "method": "edit-key",
    "soft_id": 123,
    "key": "KEY-EXAMPLE",
    "duration": 30,
    "max_devices": 5
}

Delete key

POST https://dev.mod.wtf/api/v2/action

methoddelete-key

Delete one key.

Body

  • key string required

    License key string (user_key)

  • soft_id integer required

    ID of a software you own

Errors it can return

POST /api/v2/action HTTP/1.1
Host: dev.mod.wtf
Content-Type: application/json
Accept: application/json

{
    "api_key": "YOUR_API_KEY",
    "method": "delete-key",
    "soft_id": 123,
    "key": "KEY-EXAMPLE"
}

Reset key HWID

POST https://dev.mod.wtf/api/v2/action

methodreset-key-hwid

Reset a key's linked devices and increment hwid_resets_used by 1.

Body

  • key string required

    License key string (user_key)

  • soft_id integer required

    ID of a software you own

Errors it can return

POST /api/v2/action HTTP/1.1
Host: dev.mod.wtf
Content-Type: application/json
Accept: application/json

{
    "api_key": "YOUR_API_KEY",
    "method": "reset-key-hwid",
    "soft_id": 123,
    "key": "KEY-EXAMPLE"
}

Export keys

POST https://dev.mod.wtf/api/v2/action

methodexport-keys

Export a list as a file, up to 10000 rows.

Body

  • soft_id integer required

    ID of a software you own

  • format string optional

    Export format: txt, csv or json

  • game string optional

    Filter by game

  • active boolean optional

    Filter: 1 active, 0 paused

Errors it can return

A file, not JSON

A successful export answers with the file itself, up to 10000 rows.

POST /api/v2/action HTTP/1.1
Host: dev.mod.wtf
Content-Type: application/json
Accept: application/json

{
    "api_key": "YOUR_API_KEY",
    "method": "export-keys",
    "soft_id": 123
}

List bans

POST https://dev.mod.wtf/api/v2/action

methodget-bans

List banned device serials with refused attempts.

Body

  • soft_id integer required

    ID of a software you own

  • limit integer optional

    1-200, default 50

  • offset integer optional

    Default 0

Errors it can return

POST /api/v2/action HTTP/1.1
Host: dev.mod.wtf
Content-Type: application/json
Accept: application/json

{
    "api_key": "YOUR_API_KEY",
    "method": "get-bans",
    "soft_id": 123
}

Ban device

POST https://dev.mod.wtf/api/v2/action

methodban-device

Ban a device serial. Connect refuses it on every key of the software.

Body

  • soft_id integer required

    ID of a software you own

  • serial string required

    Up to 255 characters, no commas

Errors it can return

POST /api/v2/action HTTP/1.1
Host: dev.mod.wtf
Content-Type: application/json
Accept: application/json

{
    "api_key": "YOUR_API_KEY",
    "method": "ban-device",
    "soft_id": 123,
    "serial": "device-serial"
}

Unban device

POST https://dev.mod.wtf/api/v2/action

methodunban-device

Remove a ban.

Body

  • soft_id integer required

    ID of a software you own

  • ban_id integer required

    Ban ID from get-bans

Errors it can return

POST /api/v2/action HTTP/1.1
Host: dev.mod.wtf
Content-Type: application/json
Accept: application/json

{
    "api_key": "YOUR_API_KEY",
    "method": "unban-device",
    "soft_id": 123,
    "ban_id": 7
}
Esc