Pitchfork
Pitchfork
Intro to PitchforkQuick Start Guide
Account ToolsAgent TUIConfiguration — Where Do My Args Go?Accounts Formatting ReferenceMCP ServerPublic APITriggers
GlossaryFAQ
Advanced Resources

Accounts Formatting Reference

Complete guide to formatting accounts for import into Pitchfork

Import Formats Overview

Pitchfork accepts two import formats:

FormatUse CaseComplexityFeatures
TextQuick basic importsSimpleUsername/password (+ optional OTP, PIN, group, proxy)
JSONAdvanced configurationsMediumFull metadata, Jagex Launcher tokens, per-account fields

CSV is supported for export only (Accounts → Export → CSV) so you can pull your data into a spreadsheet. There's no CSV import path; convert to text or JSON before importing.

The Import form

The Import page is at /protected/account/import. The textarea accepts both Text and JSON formats — Pitchfork detects which is which from the first character (curly brace = JSON, anything else = text).

Import Accounts form, empty

The placeholder text in the textarea shows valid format examples; click Show examples to expand the full format reference inline. The form also has:

  • Default Group (Optional) — accounts without a groupId field land here
  • Nickname Prefix (Optional) — auto-generates incrementing nicknames (e.g. moneymaker1, moneymaker2)
  • Proxy Configuration — optionally distribute accounts across existing proxies on import, and validate proxy connectivity
  • Preview vs Import — Preview parses your input and shows what would happen without actually creating accounts

Text Format Import

The simplest and fastest import method for basic accounts.

Basic Format

username:password
username2:password2
username3:password3

With Bank PIN

username:password:1234
username2:password2:5678

With TOTP/2FA

username:password:1234:JBSWY3DPEHPK3PXP
username2:password2:5678:KVKFKRCPNZQUYMLXOVYDSQKJKZDTSRLD

Format Specification

Structure: username:password[:bankPin][:totpSecret]
Delimiter: Colon (:)
Line Separator: Newline (\n)
Encoding: UTF-8
Max Lines: 10,000 per import

Example Import

// Example account list
const accounts = `
myaccount1:MyP@ssw0rd
myaccount2:MyP@ssw0rd:1234
myaccount3:MyP@ssw0rd:1234:JBSWY3DPEHPK3PXP
jagexaccount:MyP@ssw0rd::TOTP123SECRET
`.trim();

// Import via UI or API
POST /api/accounts/import
Content-Type: text/plain

myaccount1:MyP@ssw0rd
myaccount2:MyP@ssw0rd:1234

JSON Format Import

Advanced import format supporting all account properties and Jagex Launcher integration.

Basic JSON Structure

[
  {
    "username": "account1",
    "password": "password123",
    "email": "account1@example.com",
    "bankPin": "1234",
    "totpSecret": "JBSWY3DPEHPK3PXP",
    "group": "Main Accounts",
    "proxy": "proxy1.example.com:1080",
    "notes": "Main combat account"
  }
]

Jagex Launcher Accounts

[
  {
    "username": "jagex_account@email.com",
    "password": "JagexPassword123!",
    "characterName": "MyOSRSChar",
    "jagexAccessToken": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...",
    "jagexRefreshToken": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...",
    "jagexTokenExpiry": "2024-11-20T15:30:00Z",
    "totpSecret": "JBSWY3DPEHPK3PXP",
    "group": "Jagex Launcher",
    "isJagexAccount": true
  }
]

Complete JSON Schema

interface ImportAccount {
  // Required fields
  username: string; // OSRS username or Jagex email
  password: string; // Account password

  // Optional authentication
  email?: string; // Account email
  bankPin?: string; // 4-digit bank PIN
  totpSecret?: string; // Base32 TOTP secret

  // Jagex Launcher specific
  isJagexAccount?: boolean; // Flag for Jagex accounts
  characterName?: string; // In-game character name
  jagexAccessToken?: string; // OAuth access token
  jagexRefreshToken?: string; // OAuth refresh token
  jagexTokenExpiry?: string; // ISO 8601 datetime

  // Organization
  group?: string; // Group assignment
  tags?: string[]; // Custom tags
  proxy?: string; // Proxy address

  // Metadata
  notes?: string; // Account notes
  totalLevel?: number; // Total skill level
  combatLevel?: number; // Combat level
  questPoints?: number; // Quest points
  wealth?: number; // Total GP value
  membershipExpiry?: string; // P2P expiry date

  // Status
  status?: "idle" | "running" | "stopped" | "banned";
  isBanned?: boolean; // Ban status
  isLocked?: boolean; // Lock status

  // Skills (optional)
  skills?: {
    attack?: number;
    strength?: number;
    defence?: number;
    ranged?: number;
    prayer?: number;
    magic?: number;
    runecraft?: number;
    construction?: number;
    hitpoints?: number;
    agility?: number;
    herblore?: number;
    thieving?: number;
    crafting?: number;
    fletching?: number;
    slayer?: number;
    hunter?: number;
    mining?: number;
    smithing?: number;
    fishing?: number;
    cooking?: number;
    firemaking?: number;
    woodcutting?: number;
    farming?: number;
  };
}

Advanced JSON Examples

Multi-Character Jagex Account

[
  {
    "username": "jagex@email.com",
    "password": "JagexPass123!",
    "isJagexAccount": true,
    "characters": [
      {
        "characterName": "MainChar",
        "totalLevel": 1500,
        "combatLevel": 100
      },
      {
        "characterName": "AltChar",
        "totalLevel": 800,
        "combatLevel": 60
      }
    ],
    "jagexAccessToken": "token_here",
    "group": "Jagex Accounts"
  }
]

Accounts with Full Metadata

[
  {
    "username": "maxed_main",
    "password": "SecurePass123!",
    "bankPin": "7531",
    "totpSecret": "JBSWY3DPEHPK3PXP",
    "group": "Maxed Accounts",
    "proxy": "premium.proxy.com:1080:user:pass",
    "totalLevel": 2277,
    "combatLevel": 126,
    "questPoints": 293,
    "wealth": 500000000,
    "membershipExpiry": "2024-12-25T00:00:00Z",
    "skills": {
      "attack": 99,
      "strength": 99,
      "defence": 99,
      "ranged": 99,
      "prayer": 99,
      "magic": 99,
      "hitpoints": 99,
      "mining": 99,
      "smithing": 99
    },
    "tags": ["maxed", "main", "premium"],
    "notes": "Main account, do not bot on this"
  }
]

Was this page helpful?

Configuration — Where Do My Args Go?

The Agent vs Client Instance configuration fields, with examples

MCP Server

Talk to your Pitchfork dashboard from Claude, Cursor, Windsurf, or any MCP-compatible AI assistant.

On this page

Import Formats OverviewThe Import formText Format ImportBasic FormatWith Bank PINWith TOTP/2FAFormat SpecificationExample ImportJSON Format ImportBasic JSON StructureJagex Launcher AccountsComplete JSON SchemaAdvanced JSON ExamplesMulti-Character Jagex AccountAccounts with Full Metadata