Zemanta · Authentication Profile

Zemanta Authentication

Authentication

Zemanta declares 2 security scheme(s) across its OpenAPI definitions.

CompanyAdvertisingNative AdvertisingProgrammaticDSPAdTechContent RecommendationMarketingCampaign ManagementDemand-Side PlatformMedia Buying
Methods: Schemes: 2 OAuth flows: API key in:

Security Schemes

oauth2
http
scheme: bearer

Source

Authentication Profile

zemanta-authentication.yml Raw ↑
generated: '2026-08-12'
method: searched
source: https://dev.zemanta.com/one/api/
docs: https://dev.zemanta.com/one/api/
api: zemanta:teads-dsp-api
summary: >-
  The Teads DSP REST API (formerly the Zemanta One API) uses two-legged OAuth 2.0
  with the client_credentials grant. Client credentials are self-issued from the
  DSP console; the resulting bearer token is presented on every REST call.
schemes:
- key: oauth2ClientCredentials
  type: oauth2
  flow: clientCredentials
  token_url: https://oneapi.zemanta.com/o/token/
  token_endpoint_auth_method: client_secret_basic
  token_request_content_type: application/x-www-form-urlencoded
  grant_type: client_credentials
  scopes:
  - read
  - write
  token_type: Bearer
  token_lifetime_seconds: 36000
  token_lifetime_note: >-
    Access tokens are valid for 10 hours; the docs instruct clients to cache and
    reuse the token for the duration of its validity rather than re-issuing per call.
  applied_to: all /rest/v1/ operations
  evidence: >-
    "Teads DSP REST API uses two-legged OAuth2 authentication using client credentials."
    POST https://oneapi.zemanta.com/o/token/ with Authorization: Basic base64(client_id:client_secret)
    and body grant_type=client_credentials returns {"access_token": ..., "token_type": "Bearer",
    "expires_in": 36000, "scope": "read write"}.
- key: bearerToken
  type: http
  scheme: bearer
  header: Authorization
  format: 'Bearer <access_token>'
  applied_to: all /rest/v1/ operations
  evidence: >-
    "The client credentials are used to acquire an access token, which must then be
    passed to all REST API calls as the header Authorization: Bearer <access_token>"
credential_issuance:
  self_service: partial
  console_url: https://dsp.outbrain.com/o/applications/
  steps:
  - Log in to the Teads DSP console (one.zemanta.com now 301-redirects to dsp.outbrain.com).
  - Open https://dsp.outbrain.com/o/applications/ and click "New Application".
  - Name the application and save; the resulting Client ID and Client Secret are the API credentials.
  gate: >-
    API access itself is sales-gated — "In order to use Teads DSP REST API, please contact
    your sales representative." The credential-creation screen is only reachable by an
    authenticated DSP customer.
  support_contact: api-support@zemanta.com
probes:
- url: https://oneapi.zemanta.com/o/token/
  method: POST
  http_status: 405
  note: GET/HEAD rejected; the route exists.
- url: https://dsp.outbrain.com/o/token/
  method: POST
  body: grant_type=client_credentials
  http_status: 401
  response: '{"error": "invalid_client"}'
  headers_observed:
  - 'www-authenticate: Bearer error="invalid_client"'
  note: >-
    Live, anonymous confirmation that the OAuth2 token endpoint is deployed and speaks
    RFC 6749 / RFC 6750 error semantics. dsp.outbrain.com is the same Django application
    as oneapi.zemanta.com (both emit the x_z1_trace_id header, "z1" = Zemanta One).
notes:
- No API-key, mutualTLS or OpenID Connect scheme is documented for this API.
- No /.well-known/openid-configuration or /.well-known/oauth-authorization-server document is served on any Zemanta host (see well-known/zemanta-well-known.yml).

Work with this as data

Every security artifact here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for security posture

4 MCP tools reach this
  • find_securityBrowse and filter every security artifact in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This security artifact
curl "https://apis.io/api/v1/security/zemanta-authentication"
All security posture
curl "https://apis.io/api/v1/security?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.