Retrieve an account

October 7, 2026

Table of contents

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

Get one connected account with a live read from Google: whether the session is still signed in, and how much of each monthly allowance is left. The read uses the stored cookies exactly as a generation does, and every call goes to Google.

The video counter is in seconds and the image counter in images. On a Google family plan the video seconds are shared by every family member, so two accounts of one family show the same video.left. See Plans and monthly allowances.

A signed-out session found here is handled like on any other request. The API re-checks it once, and if it is still signed out the account is paused and you receive an email with the re-add link.

https://api.useapi.net/v1/google-vids/accounts/email

  • email is the email of a connected account, URL-encoded in the path.
Request Headers
Authorization: Bearer {API token}
Responses
  • 200 OK

    {
      "email": "[email protected]",
      "maxJobs": 3,
      "added": "2026-10-07T02:21:08.626Z",
      "updated": "2026-10-07T05:47:38.929Z",
      "cookies": [
        "SID",
        "HSID",
        "SSID",
        "APISID",
        "SAPISID",
        "__Secure-1PSIDTS",
        "OSID"
      ],
      "cookiesExpireAt": "2027-04-05T02:18:00.438Z",
      "vidsDocId": "1N48K72jE4hpv4A3XPH3rf0EVTpMCERAwf4uDmQPc6v4",
      "limits": {
        "video": 10000,
        "image": 1000,
        "music": 300
      },
      "health": "OK",
      "session": "signed-in",
      "quota": {
        "video": {
          "limit": 10000,
          "left": 9652,
          "resetAt": "2026-11-01T07:00:00.000Z"
        },
        "image": {
          "limit": 1000,
          "left": 947,
          "resetAt": "2026-11-01T07:00:00.000Z"
        },
        "music": {
          "limit": 300,
          "left": 298,
          "resetAt": "2026-11-01T07:00:00.000Z"
        }
      }
    }
    
    • session tells what the live read found:
      • signed-in — the account works, and quota is fresh from Google.
      • signed-out — Google signed the account out. It is paused, health holds the re-add message and you receive an email with the re-add link.
      • verifying — another request is re-checking the session right now. Retry in about a minute.
      • unknown (could not reach Google to re-check) and unavailable (…) — Google could not be reached, or its Vids page did not answer normally. The account is not paused. Retry later.
      • unknown — the session works but the allowance read failed. quotaError holds the reason.
    • quota is returned only with session: signed-in. A counter Google did not answer is null. resetAt is the 1st of next month, 00:00 Pacific time.
    • An account that is already paused (its health is the re-add message, or verifying) is returned as stored, without session or quota. Re-add a paused account with POST /accounts.
  • 400 Bad Request — the email in the path is not a valid email, or no account is connected yet.

    {
      "error": "Path parameter email (not-an-email) not a valid email",
      "code": 400
    }
    
    {
      "error": "Please configure at least one account at https://useapi.net/docs/api-google-vids-v1/post-google-vids-accounts",
      "code": 400
    }
    
  • 401 Unauthorized

    Invalid API token.

    {
      "error": "useapi.net ⁝ Unauthorized",
      "code": 401
    }
    
  • 404 Not Found — no account is connected for this email.

    {
      "error": "Account [email protected] not found",
      "code": 404
    }
    
Model
{ // TypeScript, all fields are optional
  email: string
  maxJobs: number                 // jobs this account may run at the same time
  added: string                   // ISO 8601, when the account was first connected
  updated?: string                // ISO 8601, the last re-add or maxJobs change
  cookies: string[]               // names of the stored cookies, never their values
  cookiesExpireAt?: string | null // ISO 8601, the earliest expiry date in the pasted cookies
  vidsDocId: string               // the Google Vids document the API created on the account
  limits: {                       // monthly limits read from Google when the account was added
    video: number | null          // seconds of video
    image: number | null          // images
    music: number | null          // songs (not used by this API)
  }
  health: string                  // 'OK', 'verifying', or the reason the account must be re-added
  addedVia?: 'setup-browser'      // present when the account was added by the automated setup

  session?: string                // what the live read found, see Responses
  quota?: {                       // session 'signed-in' only, null when a counter did not answer
    video: { limit: number, left: number, resetAt: string } | null   // seconds of video
    image: { limit: number, left: number, resetAt: string } | null   // images
    music: { limit: number, left: number, resetAt: string } | null   // songs (not used by this API)
  }
  quotaError?: string             // present with session 'unknown'
}
Examples
  • curl "https://api.useapi.net/v1/google-vids/accounts/user%40example.com" \
       -H "Authorization: Bearer …"
    
  • const token = "API token";
    const email = "Previously configured account email";
    const apiUrl = `https://api.useapi.net/v1/google-vids/accounts/${encodeURIComponent(email)}`;
    const response = await fetch(apiUrl, {
      headers: {
        "Authorization": `Bearer ${token}`,
      },
    });
    const result = await response.json();
    console.log("response", {response, result});
    
  • import requests
    from urllib.parse import quote
    token = "API token"
    email = "Previously configured account email"
    apiUrl = f"https://api.useapi.net/v1/google-vids/accounts/{quote(email, safe='')}"
    headers = {
        "Authorization" : f"Bearer {token}"
    }
    response = requests.get(apiUrl, headers=headers)
    print(response, response.json())
    
Try It