Advanced Resources
Accounts Formatting Reference
Complete guide to formatting accounts for import into Pitchfork
Import Formats Overview
Pitchfork accepts three primary import formats:
| Format | Use Case | Complexity | Features |
|---|---|---|---|
| Text | Quick basic imports | Simple | Username/password only |
| JSON | Advanced configurations | Medium | Full metadata support |
| CSV | Spreadsheet imports | Simple | Bulk with basic fields |
Text Format Import
The simplest and fastest import method for basic accounts.
Basic Format
username:password
username2:password2
username3:password3With Bank PIN
username:password:1234
username2:password2:5678With TOTP/2FA
username:password:1234:JBSWY3DPEHPK3PXP
username2:password2:5678:KVKFKRCPNZQUYMLXOVYDSQKJKZDTSRLDFormat Specification
Structure: username:password[:bankPin][:totpSecret]
Delimiter: Colon (:)
Line Separator: Newline (\n)
Encoding: UTF-8
Max Lines: 10,000 per importExample 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:1234JSON 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"
}
]CSV Format Import
For spreadsheet users and bulk imports from external sources.
CSV Structure
username,password,bankPin,totpSecret,group,proxy,notes
account1,pass123,1234,SECRET123,Group1,proxy1.com:1080,Main account
account2,pass456,5678,SECRET456,Group2,proxy2.com:1080,Alt account
account3,pass789,,,Group1,,F2P accountCSV Schema
Headers (required first row):
- username* # Required
- password* # Required
- bankPin # Optional
- totpSecret # Optional
- group # Optional
- proxy # Optional
- email # Optional
- notes # Optional
- totalLevel # Optional (number)
- combatLevel # Optional (number)
- wealth # Optional (number)
- status # Optional (idle|running|stopped|banned)
Delimiter: Comma (,)
Quote Character: Double quote (")
Escape Character: Backslash (\)
Encoding: UTF-8
Max Rows: 10,000Excel to CSV Export
// Excel formula for combining columns
=CONCATENATE(A2,",",B2,",",C2,",",D2,",",E2)
// PowerShell export from Excel
$excel = New-Object -ComObject Excel.Application
$workbook = $excel.Workbooks.Open("accounts.xlsx")
$worksheet = $workbook.Sheets.Item(1)
$worksheet.SaveAs("accounts.csv", 6) # 6 = CSV formatWas this page helpful?