Toda requisição, menos ServicesList, precisa da sua chave de API. Envie de uma destas três formas:
Cabeçalho HTTP X-Api-Key (recomendado: a chave fica fora das URLs e dos logs do servidor).
Parâmetro key na query string.
Campo key num corpo application/x-www-form-urlencoded (só POST).
Chaves criadas antes de novembro de 2026 podem conter + e /: faça URL-encode ao enviá-las na query string, senão o + vira espaço e a chave é recusada. Chaves novas têm 64 caracteres hexadecimais e não precisam de encode.
Requisições e respostas
Os parâmetros vão na query string ou num corpo de formulário (POST). Sucesso responde HTTP 200; erro de negócio responde HTTP 400 com o campo error (no RegisterOrder, success também vem false). Nada é debitado quando um pedido é recusado.
Limite de 120 requisições a cada 1 minuto(s) por endereço IP. Acima disso a API responde HTTP 429 com o cabeçalho Retry-After.
Serviços
Esta tabela é ao vivo: os preços já incluem o seu desconto e max é a quantidade disponível agora (acompanha o nosso estoque de contas). Serviço marcado como indisponível é recusado pelo RegisterOrder até voltar; a mesma informação está no campo active do ServicesList.
ID
Serviço
Tipo
Preço por unidade
Mín / Máx
Situação
199825
Steam Like SharedFiles/Screenshots/Guides/Workshop
link: URL da screenshot, artwork, guia ou item da Workshop: steamcommunity.com/sharedfiles/filedetails/?id=... (ou /workshop/filedetails/?id=...).
link: URL da screenshot, artwork, guia ou item da Workshop: steamcommunity.com/sharedfiles/filedetails/?id=... (ou /workshop/filedetails/?id=...).
Default
$ 0.0152
1 / 4797
Ativo
199827
Steam Group Members
link: URL pública do grupo: steamcommunity.com/groups/seugrupo. O grupo precisa ser público.
Default
$ 0.02
1 / 5467
Ativo
199828
Steam Workshop Followers
link: SteamID64 do autor na Workshop (17 dígitos, ex.: 76561198307708414) ou steamcommunity.com/profiles/SteamID64. URLs personalizadas (/id/nome) não são aceitas.
Default
$ 0.012
1 / 4797
Ativo
199829
Steam Curator Followers
link: Página do curador: store.steampowered.com/curator/12345678-Nome/.
Default
$ 0.024
1 / 5467
Ativo
199830
Steam Game Review Rate Up (helpful votes)
link: URL da análise: steamcommunity.com/id/usuario/recommended/appid/ ou steamcommunity.com/profiles/SteamID64/recommended/appid/. Os votos são sempre "útil" (Rate Up).
Default
$ 0.012
1 / 4797
Ativo
199831
Steam Trade Boost (trade offers, 1 gem each)
link: Trade URL da conta Steam que vai receber: steamcommunity.com/tradeoffer/new/?partner=...&token=... O inventário precisa ser público; cada unidade é uma troca com 1 gema.
Default
$ 0.0022
1 / 1000
Ativo
199832
Steam Profile Comments (ready-made packages)
link: SteamID64 do perfil (17 dígitos) ou steamcommunity.com/profiles/SteamID64. O perfil precisa aceitar comentários. Os comentários vêm dos nossos pacotes prontos (parâmetro obrigatório package).
link: URL da screenshot, artwork ou item da Workshop (steamcommunity.com/sharedfiles/filedetails/?id=...). Os comentários vêm dos nossos pacotes prontos (parâmetro obrigatório package).
Parâmetros opcionais: package
Default
$ 0.0264
1 / 10000
Ativo
199834
Steam Group Comments (ready-made packages)
link: URL pública do grupo: steamcommunity.com/groups/seugrupo. Os comentários vêm dos nossos pacotes prontos (parâmetro obrigatório package).
Parâmetros opcionais: package
Default
$ 0.0264
1 / 10000
Ativo
199835
Steam Profile Comments (your own comments)
link: SteamID64 do perfil ou steamcommunity.com/profiles/SteamID64, mais os seus comentários no parâmetro comments (um por linha). Parâmetro opcional delay.
Nos serviços de comentários prontos o parâmetro package é obrigatório. Ele aceita cat:<category>[:<language>] (comentários aprovados da nossa biblioteca em uma categoria; sem o idioma, inglês mais os comentários sem palavras) e lib:<id> (um pacote oficial ou publicado da biblioteca, ou um dos seus pacotes; até 10 por pedido). Separe vários por vírgula: o pedido usa até quantity comentários diferentes deles, sorteados sem repetir (um por comentário), e precisa de pelo menos 5 comentários.
Códigos de idioma: en, pt, es, ru, tr, de, pl, zh, ja, fr, it, ko, uk, ar, th, vi, id, ms, tl, hi, he, cs, sk, nl, hu, ro, sv, da, fi, no, el, bg, sr, none, other (none = comentários sem palavras, como emoji).
Comentários próprios (parâmetro comments): um comentário por linha, até 500 linhas de 1000 caracteres cada. Linhas vazias são ignoradas. Envie no corpo do formulário, não na URL.
Os serviços de comentários próprios aceitam exatamente uma origem: comments (um comentário por linha, como acima), comments_json (só no corpo do formulário: um array JSON de strings, um comentário por item; quebras de linha e recuo são mantidos; até 999 bytes e 30 linhas por comentário, e a quantity pode ser no máximo 25 vezes o número de comentários diferentes) ou package=lib:<id> (seus pacotes privados da biblioteca, separados por vírgula).
Todo comentário próprio é revisado antes de o pedido ser criado. Só golpe é recusado: reputação de troca ou de confiança, links, contato fora da Steam, se passar pelo suporte da Valve ou da Steam, sorteio falso ou propaganda, dados pessoais reais e conteúdo sexual com menor. Piada, palavrão, conteúdo tóxico ou adulto são permitidos. Se algum comentário não for aprovado, o pedido é recusado e nada é debitado; envie allow_partial=1 para seguir só com os aprovados (mesmo preço). Uma lista comments_json com mais comentários diferentes que a quantity é cortada para uma amostra aleatória (truncatedComments).
Parâmetro delay (só comentários próprios): intervalo entre dois comentários. Valores aceitos: 10 Seconds, 7 Minutes, 15 Minutes, 30 Minutes, 1 Hour, 3 Hours, 6 Hours. Padrão: 10 Seconds. O preço por comentário é o do atraso escolhido; o rate da tabela é o preço de 10 Seconds.
Endpoints
GET/ServicesList
Lista de todos os serviços com ID, preço por unidade, limites e como preencher o link. Não precisa de autenticação.
Cria um pedido e debita a carteira na hora (quantity × rate). O link é validado antes do débito; o pedido é recusado, sem nada debitado, quando o serviço está indisponível, a quantidade está fora da faixa, o link não bate com o serviço ou o saldo é insuficiente.
Parâmetros da requisição
Parâmetro
Tipo
Descrição
key
string
A chave de API para autenticação.
serviceId
integer
O ID do serviço.
link
string
Alvo do pedido: URL, SteamID64 ou trade URL, conforme o serviço (veja a tabela de serviços).
quantity
integer
Unidades a entregar, entre o mín e o máx do serviço.
comments
string
Só nos serviços de comentários próprios: seus comentários, um por linha.
comments_json
string
Só nos serviços de comentários próprios e só no corpo do formulário: array JSON de strings, um comentário por item (quebras de linha permitidas). Use no lugar de comments.
package
string
Só nos serviços de comentários. Obrigatório nos serviços de comentários prontos; vários valores separados por vírgula. Aceita cat:<category>[:<language>] e lib:<id> (até 10 lib:<id> por pedido). Nos serviços de comentários próprios: lib:<id> dos seus pacotes privados.
delay
string
Só nos serviços de comentários próprios: intervalo entre os comentários; o preço por comentário é o desse atraso. Opcional, padrão 10 Seconds.
allow_partial
string
Só nos serviços de comentários próprios: 1 = seguir com os comentários aprovados quando algum não for aprovado (mesmo preço). Opcional.
Exemplo de requisição
curl -X POST -H "X-Api-Key: YOUR_API_KEY" \
-d "serviceId=199825" \
-d "link=https://steamcommunity.com/sharedfiles/filedetails/?id=123456789" \
-d "quantity=100" \
"https://cappiservices.com/api/Reseller/RegisterOrder"
# custom comments (199835): one comment per line, URL-encoded line breaks (%0A) in the form body
curl -X POST -H "X-Api-Key: YOUR_API_KEY" \
--data-urlencode "serviceId=199835" \
--data-urlencode "link=76561198307708414" \
--data-urlencode "quantity=20" \
--data-urlencode "delay=7 Minutes" \
--data-urlencode $'comments=Nice profile!\nGreat games.\n+rep' \
"https://cappiservices.com/api/Reseller/RegisterOrder"
# comments_json (199835-199837, form body only): one comment per item, line breaks kept
curl -X POST -H "X-Api-Key: YOUR_API_KEY" \
--data-urlencode "serviceId=199835" \
--data-urlencode "link=76561198307708414" \
--data-urlencode "quantity=20" \
--data-urlencode 'comments_json=["Nice profile!","GG WP\nsee you next match"]' \
"https://cappiservices.com/api/Reseller/RegisterOrder"
# library (199832-199834, package required): categories and/or packages, comma separated
curl -X POST -H "X-Api-Key: YOUR_API_KEY" \
--data-urlencode "serviceId=199832" \
--data-urlencode "link=76561198307708414" \
--data-urlencode "quantity=20" \
--data-urlencode "package=cat:praise:en,cat:emoji,lib:12" \
"https://cappiservices.com/api/Reseller/RegisterOrder"
Só em pedidos de comentários próprios: quantos comentários da sua lista foram aprovados, recusados, enviados para revisão manual, ficaram sem revisão (tente de novo mais tarde) e ficaram de fora pelo corte para a quantity.
rejectedIndexes rejectedReasons
integer[] string[]
Só em pedidos de comentários próprios: posições (a partir de 0) dos comentários recusados na sua lista e o motivo de cada um (format, link, contact ou policy).
{
"status": "Complete",
"charge": 1.52,
"walletReturn": 0.0304,
"mode": "Like_SharedFile",
"sucess": 98,
"success": 98,
"failed": 2,
"quantity": 100,
"remains": 2,
"observation": "Info - Your order was finalized due to a lack of accounts in the database...",
"currency": "USD",
"date": "2026-11-01T14:03:27.1234567Z"
}
Parâmetros da resposta
Parâmetro
Tipo
Descrição
status
string
Situação do pedido: EnviarParaBackEnd (pago, aguardando despacho), NaFila (na fila), Processing (em entrega) ou Complete (encerrado: entregue por completo, em parte, falhou ou cancelado).
charge
decimal
Valor debitado da sua carteira na criação do pedido (USD).
walletReturn
decimal
Valor devolvido à carteira pelas unidades que não puderam ser entregues (USD). 0 até o pedido ficar Complete.
mode
string
Nome interno do serviço (MODE).
success
integer
Unidades entregues.
sucess
integer
Mesmo valor de success. Mantido por compatibilidade (grafia antiga).
failed
integer
Unidades não entregues (definitivo só quando status é Complete).
quantity
integer
Unidades pedidas.
remains
integer
Unidades que ainda faltam entregar.
observation
string
Mensagem sobre o desfecho (link inválido, falta de contas, cancelado...). Vazia quando tudo foi entregue.
currency
string
A moeda dos valores cobrados.
date
string
Data e hora da criação (UTC).
Ciclo do pedido e reembolsos
A carteira é debitada na criação do pedido. O pedido passa por EnviarParaBackEnd, NaFila, Processing e Complete. Complete é o único estado final: compare quantity, success e failed para saber se foi entregue por completo ou em parte. As unidades que não puderam ser entregues voltam para a carteira automaticamente quando o pedido encerra (walletReturn), e observation explica o motivo. Não dá para cancelar pelo API; use o painel do cliente enquanto o pedido está em Processing.
Mensagens de erro
Todo erro usa HTTP 400 e o campo error. Os mais comuns:
{ "error": "Invalid ApiKey." }
error
Descrição
Invalid parameters
key, serviceId, link ou quantity ausente ou inválido.
Invalid ApiKey.
A chave não pertence a nenhuma conta (confira o URL-encode das chaves antigas).
Your account has been disabled, please contact support. Before accessing the panel you need to confirm your email.
Conta desativada ou e-mail ainda não confirmado.
Service:{id} Not Found
serviceId desconhecido.
Service temporarily unavailable.
Serviço desligado ou sem estoque neste momento (veja active no ServicesList).
Quantity must be between 1 and {max}.
Quantidade fora do mín/máx do serviço.
Invalid URL Link Invalid Parameters: Only the user's SteamID64 must be entered, not a URL
O link não está no formato que o serviço espera.
Insufficient Funds!!
Saldo da carteira menor que quantity × rate. Nada foi debitado.
Unknown comments package "..." Unknown comments category "..." Some comments were not approved ... Comment review limit reached, try again later
Comentários: pacote ou categoria desconhecidos, seleção pequena demais, comentários não aprovados ou revisão temporariamente indisponível. Nada é debitado.
Order not found. Access denied.
O pedido não existe ou pertence a outra conta.
Too many requests... (HTTP 429)
Limite de 120 requisições a cada 1 minuto(s) por endereço IP. Acima disso a API responde HTTP 429 com o cabeçalho Retry-After.