Work with this as data
Every API 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 apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.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 API
curl "https://apis.io/api/v1/apis/gengo-jobs-api"
All apis
curl "https://apis.io/api/v1/apis?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.
OpenAPI Specification
openapi: 3.2.0
info:
title: Gengo Jobs API
version: '2.0'
description: The Gengo API (v2) lets you programmatically order human translation.
contact:
name: Gengo Support
url: https://developers.gengo.com
email: support@gengo.com
termsOfService: https://gengo.com/terms-of-service/
x-apis-json:
generated: '2026-07-19'
method: generated
source: https://developers.gengo.com/v2/api_methods/
note: Faithfully generated from the published Gengo API v2 reference (endpoints, HTTP methods, summaries, parameters and response envelope documented at developers.gengo.com). Gengo does not publish an OpenAPI/Swagger file.
servers:
- url: https://api.gengo.com/v2
description: Production
- url: http://api.sandbox.gengo.com/v2
description: Sandbox (test environment; free test credits, faux-translator triggers)
security:
- ApiKey: []
tags:
- name: Jobs
description: Submit and manage groups of translation jobs.
paths:
/translate/jobs:
post:
tags:
- Jobs
operationId: postJobs
summary: Submits a job or group of jobs to translate.
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
type: object
properties:
data:
type: string
description: JSON-encoded jobs payload (a `jobs` map plus optional `as_group`, `process`).
responses:
'200':
description: Submitted order/jobs envelope (order_id + job ids)
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
default:
$ref: '#/components/responses/Error'
get:
tags:
- Jobs
operationId: getJobs
summary: Retrieves a list of resources for the most recent jobs filtered by the given…
parameters:
- name: status
in: query
required: false
schema:
$ref: '#/components/schemas/JobStatus'
description: Filter by job status.
- name: timestamp_after
in: query
required: false
schema:
type: integer
description: Epoch time; only jobs created after this time.
- name: count
in: query
required: false
schema:
type: integer
description: Maximum number of jobs to return.
responses:
'200':
description: List of recent job resources
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
default:
$ref: '#/components/responses/Error'
put:
tags:
- Jobs
operationId: updateJobs
summary: Updates a group of jobs to translate. Request should be no larger than 100MB
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
type: object
properties:
data:
type: string
description: JSON-encoded action + job_ids.
responses:
'200':
description: Update result envelope
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
default:
$ref: '#/components/responses/Error'
/translate/jobs/{ids}:
get:
tags:
- Jobs
operationId: getJobsByIds
summary: Retrieves a list of jobs requested by a comma-separated list of job ids
parameters:
- name: ids
in: path
required: true
schema:
type: string
description: Comma-separated list of job ids.
responses:
'200':
description: Jobs envelope
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
default:
$ref: '#/components/responses/Error'
components:
schemas:
Error:
type: object
properties:
opstat:
type: string
example: error
err:
type: object
properties:
code:
type: integer
example: 1100
msg:
type: string
example: api_sig is a required field
required:
- opstat
- err
Envelope:
type: object
properties:
opstat:
type: string
enum:
- ok
- error
response:
type: object
required:
- opstat
JobStatus:
type: string
enum:
- queued
- available
- pending
- reviewable
- approved
- revising
- rejected
- canceled
- hold
description: The lifecycle status of a translation job.
responses:
Error:
description: Error envelope (opstat=error) carrying a numeric Gengo error code.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
securitySchemes:
ApiKey:
type: apiKey
in: query
name: api_key
description: Public API key identifying the account. Every authenticated call must also include `ts` (Unix epoch) and `api_sig` (HMAC-SHA1 of `ts` keyed by the account private key). Keys are created on the account API settings page.