Jump to content
McKay Development

getUserInventoryContents has stopped working (429)


Recommended Posts

Posted

Yesterday afternoon I was working on my project and everything was fine. Then I went to work, and when I came back, an error message was showing too many requests (429). I ignored it because I thought there was a problem with my internet. The Steam inventory and market data were not connecting to the wifi. Any suggestions for changes to have the user's inventory data? Any alternatives? I await your answers. Dr. Mackay, I'm a fan <3
 

Erro ao buscar inventário para 76561198103637245: Error: HTTP error 429
    at SteamCommunity._checkHttpError (C:\Users\jack-\OneDrive\Área de Trabalho\Agora vai dar certo\CSRifas\backend\node_modules\steamcommunity\components\http.js:120:9)
    at Request._callback (C:\Users\jack-\OneDrive\Área de Trabalho\Agora vai dar certo\CSRifas\backend\node_modules\steamcommunity\components\http.js:62:61)
    at self.callback (C:\Users\jack-\OneDrive\Área de Trabalho\Agora vai dar certo\CSRifas\backend\node_modules\request\request.js:185:22)
    at Request.emit (node:events:518:28)
    at Request.<anonymous> (C:\Users\jack-\OneDrive\Área de Trabalho\Agora vai dar certo\CSRifas\backend\node_modules\request\request.js:1154:10)
    at Request.emit (node:events:518:28)
    at Gunzip.<anonymous> (C:\Users\jack-\OneDrive\Área de Trabalho\Agora vai dar certo\CSRifas\backend\node_modules\request\request.js:1076:12)
    at Object.onceWrapper (node:events:632:28)
    at Gunzip.emit (node:events:518:28)
    at endReadableNT (node:internal/streams/readable:1698:12) {     
  code: 429
}
Erro ao buscar inventário para 76561198103637245: Error: HTTP error 429
    at SteamCommunity._checkHttpError (C:\Users\jack-\OneDrive\Área de Trabalho\Agora vai dar certo\CSRifas\backend\node_modules\steamcommunity\components\http.js:120:9)
    at Request._callback (C:\Users\jack-\OneDrive\Área de Trabalho\Agora vai dar certo\CSRifas\backend\node_modules\steamcommunity\components\http.js:62:61)
    at self.callback (C:\Users\jack-\OneDrive\Área de Trabalho\Agora vai dar certo\CSRifas\backend\node_modules\request\request.js:185:22)
    at Request.emit (node:events:518:28)
    at Request.<anonymous> (C:\Users\jack-\OneDrive\Área de Trabalho\Agora vai dar certo\CSRifas\backend\node_modules\request\request.js:1154:10)
    at Request.emit (node:events:518:28)
    at Gunzip.<anonymous> (C:\Users\jack-\OneDrive\Área de Trabalho\Agora vai dar certo\CSRifas\backend\node_modules\request\request.js:1076:12)
    at Object.onceWrapper (node:events:632:28)
    at Gunzip.emit (node:events:518:28)
    at endReadableNT (node:internal/streams/readable:1698:12) {     
  code: 429
}

 

Posted (edited)

 

@Dr. McKay change the count param to 1000 please steam is responding 400 on 5000
 

        self.httpRequest({
            "uri": "https://steamcommunity.com/inventory/" + userID.getSteamID64() + "/" + appID + "/" + contextID,
            "headers": {
                "Referer": "https://steamcommunity.com/profiles/" + userID.getSteamID64() + "/inventory"
            },
            "qs": {
                "l": language, // Default language
                "count": 1000, // Max items per 'page'
                "start_assetid": start
            },
            "json": true
        },
Edited by TheMaster
removed the old reply
Posted (edited)

unfortunately it's not working for me, not at all... I even created a test but it returns error 429... I've tried with other IDs thinking that my inventory was blocked... can you tell me any alternative for this?

 

 

PS C:\Users\Usuario> # --- Início do Script de Teste de Inventário ---

>>

>> # 1. Definição das variáveis

>> $steamId = "76561198355549311"

>> $appId = 730 # CS2

>> $contextId = 2 # Itens Padrão

>>

>> # A Chave de API NÃO é necessária para esta chamada.

>>

>> # 2. Construção da URL do endpoint público

>> # Usamos l=english para nomes em ingles e count=1000 para tentar pegar tudo

>> $apiUrl = "https://steamcommunity.com/inventory/$($steamId)/$($appId)/$($contextId)?l=english&count=1000"

>>

>> # 3. Execução do Teste

>> Write-Host "----------------------------------------------------"

>> Write-Host "Iniciando teste de busca de inventário..."

>> Write-Host "URL Alvo: $($apiUrl)"

>> Write-Host "----------------------------------------------------`n"

>>

>> try {

>> # Invoke-RestMethod faz a chamada e já converte a resposta JSON

>> $response = Invoke-RestMethod -Uri $apiUrl -Method Get

>>

>> # 4. Análise e Exibição do Resultado

>> if ($null -ne $response.assets) {

>> Write-Host " Sucesso! Inventário encontrado com $($response.total_inventory_count) itens." -ForegroundColor Green

>> Write-Host "Exibindo os primeiros 5 itens:`n"

>>

>> # Limita a exibição para os primeiros 5 itens

>> $itensParaExibir = $response.assets | Select-Object -First 5

>>

>> # Para cada item, encontramos sua descrição correspondente

>> foreach ($item in $itensParaExibir) {

>> # A descrição é encontrada comparando classid e instanceid

>> $descricao = $response.descriptions | Where-Object { $.classid -eq $item.classid -and $.instanceid -eq $item.instanceid }

>>

>> if ($null -ne $descricao) {

>> Write-Host " ➡ Item: $($descricao.market_hash_name)"

>> Write-Host " - AssetID: $($item.assetid)"

>> Write-Host " - Trocável? $($descricao.tradable)"

>> Write-Host "" # Linha em branco para separar

>> }

>> }

>>

>> } else {

>> Write-Host "⚠ Atenção: A requisição foi bem-sucedida, mas o inventário parece estar vazio ou em um formato inesperado." -ForegroundColor Yellow

>> }

>>

>> } catch {

>> # Captura erros, sendo o mais comum o inventário ser privado (que retorna um erro 403 Forbidden)

>> Write-Host " Erro! Não foi possível buscar o inventário." -ForegroundColor Red

>> Write-Host " ➡ Causa Provável: O inventário deste usuário está configurado como 'Privado' ou 'Apenas Amigos'."

>> Write-Host " Detalhes do Erro: $($_.Exception.Message)"

>> }

>>

>> Write-Host "`n--- Fim do Teste ---"

>>

>> # --- Fim do Script de Teste ---

----------------------------------------------------

Iniciando teste de busca de inventário...

URL Alvo: https://steamcommunity.com/inventory/76561198355549311/730/2?l=english&count=1000

----------------------------------------------------

 

Erro! Não foi possível buscar o inventário.

   ➡ Causa Provável: O inventário deste usuário está configurado como 'Privado' ou 'Apenas Amigos'.

   Detalhes do Erro: O servidor remoto retornou um erro: (429) Too Many Requests.

 

--- Fim do Teste ---

 

 

 

I redid the test and it worked! I don't understand. The first query gave 429, now it stopped for a while... I think it's a bug in Steam Brazil. Sorry for the wasted time.

Edited by jackduarte_

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...