> ## Documentation Index
> Fetch the complete documentation index at: https://api.zglosscammera.pl/llms.txt
> Use this file to discover all available pages before exploring further.

# Lista oszustów

> Zweryfikowani oszuści oraz osoby z listy ryzyka. Wpisy z `verified: false` pochodzą z listy ryzyka (zgłoszone, jeszcze niezweryfikowane).



## OpenAPI

````yaml GET /api/scammers
openapi: 3.1.0
info:
  title: Zgłoś Scammera — publiczne API
  version: 1.0.0
  description: >-
    Publiczne API Zgłoś Scammera: listy oszustów, serwerów oszukujących i
    zaufanych osób, sprawdzanie osoby, status usług i status wpłat. Bez
    logowania i bez klucza API, z otwartym CORS.
  contact:
    name: Zgłoś Scammera — Discord
    url: https://discord.gg/zglososzusta
servers:
  - url: https://zglosscammera.pl
    description: Produkcja
security: []
tags:
  - name: Listy
    description: Listy oszustów, serwerów i zaufanych osób
  - name: Sprawdzanie
    description: Sprawdzanie osoby lub serwera na wszystkich listach
  - name: Status
    description: Status usług i wpłat
  - name: Discord
    description: Pomocnicze endpointy Discord
paths:
  /api/scammers:
    get:
      tags:
        - Listy
      summary: Lista oszustów
      description: >-
        Zweryfikowani oszuści oraz osoby z listy ryzyka. Wpisy z `verified:
        false` pochodzą z listy ryzyka (zgłoszone, jeszcze niezweryfikowane).
      operationId: listScammers
      parameters:
        - name: search
          in: query
          required: false
          description: >-
            Szukanie po nicku/nazwie, Discord ID i powodzie zgłoszenia. Bez
            rozróżniania wielkości liter, max 100 znaków.
          schema:
            type: string
            maxLength: 100
          example: majster
        - name: id
          in: query
          required: false
          description: >-
            Pobranie konkretnego wpisu po Discord ID osoby lub serwera. Ma
            pierwszeństwo przed `search`. Max 64 znaki.
          schema:
            type: string
            maxLength: 64
          example: '1478133625840074918'
        - name: sort
          in: query
          required: false
          description: |-
            Kolejność wyników.

            - `newest` — najnowsze zgłoszenia
            - `oldest` — najstarsze
            - `popular` — najczęściej wyświetlane
            - `popular_asc` — najrzadziej wyświetlane
            - `az` / `za` — alfabetycznie po nazwie
          schema:
            type: string
            enum:
              - newest
              - oldest
              - popular
              - popular_asc
              - az
              - za
            default: newest
        - name: status
          in: query
          required: false
          description: >-
            `all` — wszystkie, `verified` — tylko zweryfikowane, `risk` — tylko
            lista ryzyka. Dla `/api/legit` zawsze tylko zweryfikowane.
          schema:
            type: string
            enum:
              - all
              - verified
              - risk
            default: all
        - name: proofs
          in: query
          required: false
          description: >-
            `all` — wszystkie, `with` — tylko wpisy z dowodami, `private` —
            tylko wpisy z dowodami prywatnymi.
          schema:
            type: string
            enum:
              - all
              - with
              - private
            default: all
        - name: skip
          in: query
          required: false
          description: Ile wpisów pominąć (paginacja).
          schema:
            type: integer
            minimum: 0
            maximum: 20000
            default: 0
        - name: limit
          in: query
          required: false
          description: Ile wpisów zwrócić.
          schema:
            type: integer
            minimum: 1
            maximum: 60
            default: 30
      responses:
        '200':
          description: Strona wyników
          headers:
            Cache-Control:
              $ref: '#/components/headers/ListCache'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponse'
              example:
                data:
                  - _id: 6ace6d91520ed2c5d1892bc1
                    name: _17cps
                    id: '1292547068665004222'
                    descHtml: |
                      <p>wyjebka na 17zł</p>
                    verified: true
                    proofsId: proof_1791917930047_1f3dcerb
                    reportId: ODuXRKKfsT
                total: 2718
                hasMore: true
        '405':
          $ref: '#/components/responses/MethodNotAllowed'
        '500':
          $ref: '#/components/responses/ServerError'
components:
  headers:
    ListCache:
      description: '`public, s-maxage=30, stale-while-revalidate=300`'
      schema:
        type: string
  schemas:
    ListResponse:
      type: object
      required:
        - data
        - total
        - hasMore
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/ListEntry'
        total:
          type: integer
          description: Łączna liczba wpisów pasujących do filtrów
        hasMore:
          type: boolean
          description: Czy są kolejne strony
    ListEntry:
      type: object
      required:
        - _id
        - name
        - id
        - descHtml
        - verified
        - proofsId
        - reportId
      properties:
        _id:
          type: string
          description: Wewnętrzne ID wpisu w bazie
        name:
          type: string
          description: Nick osoby albo nazwa serwera
        id:
          type: string
          description: Discord ID osoby lub serwera
        descHtml:
          type: string
          description: >-
            Powód zgłoszenia jako HTML (wyrenderowany Markdown). Oczyść przed
            wstawieniem na własną stronę.
        verified:
          type: boolean
          description: '`true` — zweryfikowany wpis, `false` — lista ryzyka'
        proofsId:
          type:
            - string
            - 'null'
          description: 'ID dowodów. Strona: `https://zglosscammera.pl/proofs/{proofsId}`'
        reportId:
          type: string
          description: ID zgłoszenia (podawane przy odwołaniach)
    Error:
      type: object
      required:
        - error
      properties:
        error:
          type: string
          description: Opis błędu
  responses:
    MethodNotAllowed:
      description: Zła metoda HTTP
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: Metoda niedozwolona
    ServerError:
      description: Błąd serwera lub bazy
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: Błąd podczas pobierania danych.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.