TextMaster · Authentication Profile
Textmaster Authentication
Authentication
TextMaster secures its APIs with oauth2 and custom-signature across 2 declared security schemes, as derived from its OpenAPI definitions. OAuth 2.0 is offered via the authorizationCode flow(s).
CompanyTranslationLocalizationLanguage ServicesCopywritingProofreadingMachine TranslationContent ProductionTranslation MemoryGlossaryEcommerce LocalizationProduct Information ManagementWebhookAuthenticationSoftware-as-a-Service
Methods: oauth2, custom-signature
Schemes: 2
OAuth flows: authorizationCode
API key in:
Security Schemes
oauth2 oauth2
· flows: authorizationCode
signature apiKey
· in: header ()
Source
Authentication Profile
generated: '2026-08-17'
method: searched
source: openapi/textmaster-api-v1-openapi.yml
docs: https://developer.textmaster.com/overview/authentication
checked: '2026-08-17'
summary:
types:
- oauth2
- custom-signature
oauth2_flows:
- authorizationCode
note: >-
The OpenAPI declares ONE security scheme (oauth2, authorizationCode). The developer portal
documents a SECOND, spec-undeclared strategy — a custom HMAC-style "Signature" scheme using
Apikey / Date / Signature request headers — which the provider itself marks as test-only and
discourages for production. Both are recorded here; the signature scheme is the reason this
file is `searched` rather than the mechanically `derived` baseline.
schemes:
- name: oauth2
type: oauth2
flows:
- flow: authorizationCode
authorizationUrl: https://api.textmaster.com/oauth/authorize
tokenUrl: https://api.textmaster.com/oauth/token
refreshUrl: https://api.textmaster.com/oauth/token
scopes: 3
scopes_note: >-
The spec's flow `scopes` map declares only the three preferred_author scopes, but operation
`security[]` requirements reference 21 distinct scopes and the docs publish a 20-row scope
table including `public`. The full union of 22 scopes is in scopes/textmaster-scopes.yml.
description: OAuth2 Bearer token authentication
token_delivery:
header: Authorization
format: 'Bearer <ACCESS-TOKEN>'
provider_recommendation: >-
"TextMaster recommends sending OAuth tokens using the Authorization header."
app_model: >-
OAuth Apps are registered from the TextMaster application under "API & Loop" ->
"View OAuth Applications". Each app has a client_id, client_secret and a registered callback
URL. An OAuth App acts as the authenticated user across all of TextMaster and, once granted,
receives permissions to every project that user can access.
refresh_tokens: true
revocable_by_user: true
user_editable_scopes: true
user_editable_scopes_note: >-
Users may grant fewer scopes than requested and may edit token scopes after the flow
completes, so the granted `scope` attribute on the token must be read rather than assumed.
authorization_host_discrepancy: >-
The spec names https://api.textmaster.com/oauth/authorize; the scopes documentation and the
published Postman collection both use the application host
(https://app.textmaster.com/oauth/authorize, and {{baseUrl}}/oauth/authorize where baseUrl is
the API host). Both hosts are TextMaster's. Recorded rather than resolved — a client should
follow the docs.
sources:
- openapi/textmaster-api-v1-openapi.yml
- https://developer.textmaster.com/apps/about-oauth-apps
- https://developer.textmaster.com/apps/building-oauth-apps/scopes-for-oauth-apps
- name: signature
type: apiKey
in: header
spec_declared: false
description: >-
Legacy per-user key-pair strategy. The client computes SHA-1 over the concatenation of the
API secret and a UTC timestamp, then sends three headers. The signature is valid for five
minutes after creation. Keys are read from the TextMaster application's "API & Loop" page.
headers:
- name: Apikey
meaning: The account's public API key.
- name: Date
meaning: 'UTC timestamp, format: YYYY-MM-DD HH:MM:SS'
- name: Signature
meaning: SHA-1 hex digest of (api_secret + date)
signature_algorithm: sha1(api_secret || date)
validity_seconds: 300
provider_guidance: >-
"TextMaster discourages using the signature strategy to authenticate production applications
to the API. Clients should use OAuth2 Apps instead." The quick-start repeats the warning:
signature is for test purposes only.
verification_endpoint: https://api.textmaster.com/test
sources:
- https://developer.textmaster.com/overview/authentication
- https://developer.textmaster.com/quick-start
unauthenticated_surface:
note: >-
Two surfaces need no credentials at all. Recorded because an agent can reach them with no
onboarding.
endpoints:
- path: /ping
method: GET
probed_status: 200
probed: '2026-08-17'
response: '{"message":"Textmaster API at your service"}'
- path: /v1/public/*
method: GET
note: >-
categories, countries, expertises (+ sub_expertises), languages and locales carry no
`security[]` requirement in the spec. The docs assign these to the default `public` scope.
oauth_error_envelope:
shape: '{"error": "...", "error_description": "..."}'
documented_codes:
- code: invalid_client
meaning: client_id and/or client_secret are incorrect.
- code: invalid_grant
meaning: >-
Authorization code / refresh token invalid, expired, revoked, or redirect_uri mismatch.
- code: invalid_token
meaning: The access token is invalid (returned as 401/403 on API calls).
see: errors/textmaster-problem-types.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.
Call it yourself
curl for this page
This security artifact
curl "https://apis.io/api/v1/security/textmaster-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.