Configure a Flow Music account

June 3, 2026

Table of contents

  1. Request Headers
  2. Request Body
  3. Responses
  4. Model
  5. Examples
  6. Try It

Configure a Flow Music account for API access using its refresh token. See Setup Flow Music for how to obtain the token.

You can configure up to 50 Flow Music accounts per single useapi.net account. To change an account’s concurrency limit later, re-POST with just email + maxJobs (no token) — see Request Body below.

https://api.useapi.net/v1/flowmusic/accounts

Request Headers

Authorization: Bearer {API token}
Content-Type: application/json
# Alternatively you can use multipart/form-data
# Content-Type: multipart/form-data

Request Body

Add or refresh an account — provide the refresh_token:

{
  "refresh_token": "bdykxtrr5eaf...",
  "maxJobs": 12
}
  • refresh_token is required to add or refresh, the flowmusic.app refresh token (≥10 chars). See Setup Flow Music.
  • maxJobs is optional, the max concurrent jobs for this account, 1–16 (defaults to the plan tier).

Update maxJobs on an existing account — provide email + maxJobs, with no refresh_token:

{
  "email": "[email protected]",
  "maxJobs": 4
}
  • email is required for this mode — an already-configured account.
  • maxJobs is required here, 1–16. Only this field is updated; no token refresh happens. Send nothing else alongside email.

Responses

  • 200 OK — existing account updated.

    {
      "email": "[email protected]",
      "tier": "plus",
      "subscription_plan": "plus-monthly",
      "provider": "g1_entitlement",
      "user_id": "a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d",
      "maxJobs": 12,
      "added": "2026-06-01T12:00:00.000Z",
      "refreshed_at": "2026-06-01T12:00:00.000Z",
      "refreshed_count": 0,
      "access_token": "eyJ…redacted…zmQ",
      "access_token_expires_at": "2026-06-01T13:00:00.000Z",
      "refresh_token": "l6e…redacted…z4v",
      "session_id": "f0e1d2c3-b4a5-4768-9a0b-1c2d3e4f5a6b"
    }
    
  • 201 Created — new account configured. Same body as 200.

  • 400 — add mode: missing/invalid refresh_token, or the token failed to refresh. Update mode: maxJobs missing or outside 1–16, or email sent together with refresh_token.

    { "error": "maxJobs is required when updating an account by email", "code": 400 }
    
  • 404 — update mode: no account is configured for the given email.

    { "error": "Account [email protected] not found", "code": 404 }
    
  • 401 Unauthorized — invalid API token.

Model

200 (updated) and 201 (created) return the same account record.

{
  email: string
  tier: 'free' | 'starter' | 'plus' | 'member' | 'unknown'
  subscription_plan?: string         // paid tiers only
  provider?: string                  // paid tiers only
  user_id: string                    // the account's user UUID
  maxJobs: number
  added: string                      // ISO 8601 timestamp
  refreshed_at: string               // ISO 8601 timestamp
  refreshed_count: number
  access_token: string               // redacted
  access_token_expires_at: string    // ISO 8601 timestamp
  refresh_token: string              // redacted
  session_id: string
  error?: string                     // present only when the account needs re-authentication
}

Examples

  • curl -H "Content-Type: application/json" \
         -H "Authorization: Bearer YOUR_API_TOKEN" \
         -X POST "https://api.useapi.net/v1/flowmusic/accounts" \
         -d '{ "refresh_token": "bdykxtrr5eaf...", "maxJobs": 12 }'
    
  • import requests
    response = requests.post(
        'https://api.useapi.net/v1/flowmusic/accounts',
        headers={'Authorization': 'Bearer YOUR_API_TOKEN'},
        json={'refresh_token': 'bdykxtrr5eaf...', 'maxJobs': 12}
    )
    print(response.status_code, response.json())
    

Try It