Serbia Company Data · Authentication Profile

Serbia Company Data Authentication

Authentication

Serbia Company Data secures its APIs with none and x402-payment across 1 declared security scheme, as derived from its OpenAPI definitions.

serbiacompany-databusiness-registryopen-datax402base-usdcopenapifinancial-statementspay-per-callagent-native
Methods: none, x402-payment Schemes: 1 OAuth flows: API key in:

Security Schemes

x402 payment

Source

Authentication Profile

Raw ↑
generated: '2026-08-09'
method: searched
source: https://serbia-company-x402.vercel.app/ + live PAYMENT-REQUIRED header capture
docs: https://docs.x402.org/getting-started/quickstart-for-buyers
summary:
  types: [none, x402-payment]
  api_key_in: []
  oauth2_flows: []
  accounts_required: false
  api_keys_required: false
notes: >-
  This API has no identity-based authentication. There is no account, no signup, no API key and no
  OAuth. Authorization is per-request and economic: an unpaid call to a priced route returns
  HTTP 402 with an x402 v2 payment challenge, and the caller re-sends the request carrying a signed
  payment payload. The OpenAPI declares no securitySchemes, which is a faithful reflection of that
  model rather than an omission — but it also means the payment contract is invisible to any tool
  that reads only the spec's security section (see gaps).
schemes:
  - name: x402
    type: payment
    protocol: x402
    version: 2
    transport: http
    request_header: PAYMENT-SIGNATURE
    challenge_header: PAYMENT-REQUIRED
    settlement_header: PAYMENT-RESPONSE
    challenge_status: 402
    encoding: base64-encoded JSON
    sources: [openapi/_original/serbia-company-data-openapi.json]
    spec: https://github.com/x402-foundation/x402/blob/main/specs/transports-v2/http.md
    accepts:
      - scheme: exact
        network: eip155:8453
        network_name: Base
        asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
        asset_name: USD Coin
        asset_version: '2'
        pay_to: '0xcEE09f451355261E5f6a0271757638A55AF8Ae7b'
        max_timeout_seconds: 300
    extensions:
      - name: bazaar
        note: >-
          Each 402 challenge carries a bazaar discovery block with the route's input/output example
          and a JSON Schema 2020-12 document — harvested to json-schema/.
unauthenticated_operations:
  - path: /api/sample
    method: get
    note: Free Air Serbia sample response, no payment challenge. Not declared in the OpenAPI.
  - path: /health
    method: get
    note: Service health plus dataset snapshot metadata. Not declared in the OpenAPI.
paid_operations:
  - operationId: getSerbianCompany
    price_usd: '0.01'
  - operationId: searchSerbianCompanies
    price_usd: '0.01'
  - operationId: batchGetSerbianCompanies
    price_usd: '0.05'
gaps:
  - >-
    The OpenAPI has no securitySchemes entry for the payment gate. An x402 scheme is not yet an
    OpenAPI securityScheme type, but the per-operation x-payment-info extension is present and could
    be complemented by a documented scheme so spec-only consumers see the 402 contract.
  - >-
    The 402 challenge is returned before request validation — an invalid mb or a too-short q also
    returns 402 rather than 400, so a caller cannot distinguish a malformed request from an unpaid one
    without paying first.
cross_links:
  conventions: conventions/serbia-company-data-conventions.yml
  errors: errors/serbia-company-data-problem-types.yml
  examples: examples/serbia-company-data-402-payment-required.json
x-evidence:
  fetched: '2026-08-09'
  probes:
    - url: https://serbia-company-x402.vercel.app/api/company?mb=07044275
      http_status: 402
    - url: https://serbia-company-x402.vercel.app/api/search?q=air%20serbia
      http_status: 402
    - url: https://serbia-company-x402.vercel.app/api/company/batch
      http_status: 402
    - url: https://serbia-company-x402.vercel.app/api/sample
      http_status: 200