Phrase Jobs API
The Jobs API from Phrase — 9 operation(s) for jobs.
The Jobs API from Phrase — 9 operation(s) for jobs.
openapi: 3.0.3
info:
title: Phrase Strings API Reference Accounts Jobs API
version: 2.0.0
description: Phrase Strings is a translation management platform for software projects. You can collaborate on language file translation with your team or order translations through our platform. The API allows you to import locale files, download locale files, tag keys or interact in other ways with the localization data stored in Phrase Strings for your account.
contact:
name: Phrase Support
url: https://developers.phrase.com/api/
email: support@phrase.com
x-logo:
url: https://developers.phrase.com/images/phrase-logo.svg
backgroundColor: '#03eab3'
altText: Phrase Strings
termsOfService: https://phrase.com/terms/
license:
name: MIT
url: https://choosealicense.com/licenses/mit/
servers:
- url: https://api.phrase.com/v2
description: EU production server
- url: https://api.us.app.phrase.com/v2
description: US production server
security:
- Token: []
- Basic: []
tags:
- name: Jobs
paths:
/projects/{project_id}/jobs:
get:
summary: List jobs
description: List all jobs for the given project.
operationId: jobs/list
tags:
- Jobs
parameters:
- $ref: '#/components/parameters/X-PhraseApp-OTP'
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/per_page'
- $ref: '#/components/parameters/branch'
- $ref: '#/components/parameters/job_owner'
- $ref: '#/components/parameters/job_assignee'
- $ref: '#/components/parameters/job_state'
- $ref: '#/components/parameters/job_updated_since'
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/job'
headers:
X-Rate-Limit-Limit:
$ref: '#/components/headers/X-Rate-Limit-Limit'
X-Rate-Limit-Remaining:
$ref: '#/components/headers/X-Rate-Limit-Remaining'
X-Rate-Limit-Reset:
$ref: '#/components/headers/X-Rate-Limit-Reset'
Link:
$ref: '#/components/headers/Link'
Pagination:
$ref: '#/components/headers/Pagination'
'400':
$ref: '#/components/responses/400'
'404':
$ref: '#/components/responses/404'
'429':
$ref: '#/components/responses/429'
x-code-samples:
- lang: Curl
source: "curl \"https://api.phrase.com/v2/projects/:project_id/jobs?branch=my-feature-branch&owned_by=abcd1234cdef1234abcd1234cdef1234&assigned_to=abcd1234cdef1234abcd1234cdef1234&state=completed\" \\\n -u USERNAME_OR_ACCESS_TOKEN"
- lang: CLI v2
source: 'phrase jobs list \
--project_id <project_id> \
--branch my-feature-branch \
--owned_by abcd1234cdef1234abcd1234cdef1234 \
--assigned_to abcd1234cdef1234abcd1234cdef1234 \
--state completed \
--access_token <token>'
x-cli-version: '2.5'
post:
summary: Create a job
description: Create a new job.
operationId: job/create
tags:
- Jobs
parameters:
- $ref: '#/components/parameters/X-PhraseApp-OTP'
- $ref: '#/components/parameters/project_id'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/job_details'
headers:
X-Rate-Limit-Limit:
$ref: '#/components/headers/X-Rate-Limit-Limit'
X-Rate-Limit-Remaining:
$ref: '#/components/headers/X-Rate-Limit-Remaining'
X-Rate-Limit-Reset:
$ref: '#/components/headers/X-Rate-Limit-Reset'
'400':
$ref: '#/components/responses/400'
'404':
$ref: '#/components/responses/404'
'429':
$ref: '#/components/responses/429'
x-code-samples:
- lang: Curl
source: "curl \"https://api.phrase.com/v2/projects/:project_id/jobs\" \\\n -u USERNAME_OR_ACCESS_TOKEN \\\n -X POST \\\n -d '{\"branch\":\"my-feature-branch\",\"name\":\"de\",\"briefing\":\"de-DE\",\"due_date\":\"2017-08-15\",\"ticket_url\":\"https://example.atlassian.net/browse/FOO\",\"tags\":[\"myUploadTag\"],\"translation_key_ids\":[\"abcd1234cdef1234abcd1234cdef1234\"]}' \\\n -H 'Content-Type: application/json'"
- lang: CLI v2
source: 'phrase jobs create \
--project_id <project_id> \
--data ''{"branch":"my-feature-branch", "name":"de", "briefing":"de-DE", "due_date":"2017-08-15", "ticket_url":"https://example.atlassian.net/browse/FOO", "tags": ["myUploadTag"], "translation_key_ids": ["abcd1234cdef1234abcd1234cdef1234"]}'' \
--access_token <token>'
requestBody:
required: true
content:
application/json:
schema:
type: object
title: job/create/parameters
required:
- name
properties:
branch:
description: specify the branch to use
type: string
example: my-feature-branch
name:
description: Job name
type: string
example: de
source_locale_id:
description: The API id of the source language
type: string
example: abcd1234cdef1234abcd1234cdef1234
briefing:
description: Briefing for the translators
type: string
example: de-DE
due_date:
description: Date the job should be finished
type: string
format: date-time
example: '2017-08-15'
nullable: true
ticket_url:
description: URL to a ticket for this job (e.g. Jira, Trello)
type: string
example: https://example.atlassian.net/browse/FOO
tags:
description: tags of keys that should be included within the job
type: array
items:
type: string
example:
- myUploadTag
translation_key_ids:
description: ids of keys that should be included within the job
type: array
items:
type: string
example:
- abcd1234cdef1234abcd1234cdef1234
target_locale_ids:
description: List of target locales for the job. Mutually exclusive with `job_template_id`.
type: array
items:
type: string
example:
- abcd1234cdef1234abcd1234cdef1234
job_template_id:
description: id of a job template you would like to model the created job after. Any manually added parameters will take preference over template attributes. Mutually exclusive with `target_locale_ids`.
type: string
example: abcd1234cdef1234abcd1234cdef1234
autotranslate:
description: Automatically translate the job using machine translation.
type: boolean
example: true
x-cli-version: '2.5'
/accounts/{account_id}/jobs:
get:
summary: List account jobs
description: List all jobs for the given account.
operationId: jobs/by_account
tags:
- Jobs
parameters:
- $ref: '#/components/parameters/X-PhraseApp-OTP'
- $ref: '#/components/parameters/account_id'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/per_page'
- $ref: '#/components/parameters/job_owner'
- $ref: '#/components/parameters/job_assignee'
- $ref: '#/components/parameters/job_state'
- $ref: '#/components/parameters/job_updated_since'
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/job'
headers:
X-Rate-Limit-Limit:
$ref: '#/components/headers/X-Rate-Limit-Limit'
X-Rate-Limit-Remaining:
$ref: '#/components/headers/X-Rate-Limit-Remaining'
X-Rate-Limit-Reset:
$ref: '#/components/headers/X-Rate-Limit-Reset'
Link:
$ref: '#/components/headers/Link'
Pagination:
$ref: '#/components/headers/Pagination'
'400':
$ref: '#/components/responses/400'
'404':
$ref: '#/components/responses/404'
'429':
$ref: '#/components/responses/429'
x-code-samples:
- lang: Curl
source: "curl \"https://api.phrase.com/v2/accounts/:account_id/jobs?owned_by=abcd1234cdef1234abcd1234cdef1234&assigned_to=abcd1234cdef1234abcd1234cdef1234&state=completed\" \\\n -u USERNAME_OR_ACCESS_TOKEN"
- lang: CLI v2
source: 'phrase jobs by_account \
--account_id <account_id> \
--owned_by abcd1234cdef1234abcd1234cdef1234 \
--assigned_to abcd1234cdef1234abcd1234cdef1234 \
--state completed \
--access_token <token>'
x-cli-version: '2.5'
/projects/{project_id}/jobs/{id}:
get:
summary: Get a single job
description: Get details on a single job for a given project.
operationId: job/show
tags:
- Jobs
parameters:
- $ref: '#/components/parameters/X-PhraseApp-OTP'
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/id'
- $ref: '#/components/parameters/branch'
- $ref: '#/components/parameters/include_annotations'
- $ref: '#/components/parameters/omit_translation_keys'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/job_details'
headers:
X-Rate-Limit-Limit:
$ref: '#/components/headers/X-Rate-Limit-Limit'
X-Rate-Limit-Remaining:
$ref: '#/components/headers/X-Rate-Limit-Remaining'
X-Rate-Limit-Reset:
$ref: '#/components/headers/X-Rate-Limit-Reset'
'400':
$ref: '#/components/responses/400'
'404':
$ref: '#/components/responses/404'
'429':
$ref: '#/components/responses/429'
x-code-samples:
- lang: Curl
source: "curl \"https://api.phrase.com/v2/projects/:project_id/jobs/:id?branch=my-feature-branch\" \\\n -u USERNAME_OR_ACCESS_TOKEN"
- lang: CLI v2
source: 'phrase jobs show \
--project_id <project_id> \
--id <id> \
--branch my-feature-branch \
--access_token <token>'
x-cli-version: '2.5'
patch:
summary: Update a job
description: Update an existing job.
operationId: job/update
tags:
- Jobs
parameters:
- $ref: '#/components/parameters/X-PhraseApp-OTP'
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/job_details'
headers:
X-Rate-Limit-Limit:
$ref: '#/components/headers/X-Rate-Limit-Limit'
X-Rate-Limit-Remaining:
$ref: '#/components/headers/X-Rate-Limit-Remaining'
X-Rate-Limit-Reset:
$ref: '#/components/headers/X-Rate-Limit-Reset'
'400':
$ref: '#/components/responses/400'
'404':
$ref: '#/components/responses/404'
'429':
$ref: '#/components/responses/429'
x-code-samples:
- lang: Curl
source: "curl \"https://api.phrase.com/v2/projects/:project_id/jobs/:id\" \\\n -u USERNAME_OR_ACCESS_TOKEN \\\n -X PATCH \\\n -d '{\"branch\":\"my-feature-branch\",\"name\":\"de\",\"briefing\":\"de-DE\",\"due_date\":\"2017-08-15\",\"ticket_url\":\"https://example.atlassian.net/browse/FOO\"}' \\\n -H 'Content-Type: application/json'"
- lang: CLI v2
source: 'phrase jobs update \
--project_id <project_id> \
--id <id> \
--data ''{"branch":"my-feature-branch", "name":"de", "briefing":"de-DE", "due_date":"2017-08-15", "ticket_url":"https://example.atlassian.net/browse/FOO"}'' \
--access_token <token>'
requestBody:
required: true
content:
application/json:
schema:
type: object
title: job/update/parameters
properties:
branch:
description: specify the branch to use
type: string
example: my-feature-branch
name:
description: Job name
type: string
example: de
briefing:
description: Briefing for the translators
type: string
example: de-DE
due_date:
description: Date the job should be finished
type: string
format: date-time
example: '2017-08-15'
nullable: true
ticket_url:
description: URL to a ticket for this job (e.g. Jira, Trello)
type: string
example: https://example.atlassian.net/browse/FOO
target_locale_ids:
description: List of target locales for the job.
type: array
items:
type: string
example:
- abcd1234cdef1234abcd1234cdef1234
autotranslate:
description: Automatically translate the job using machine translation
type: boolean
example: true
x-cli-version: '2.5'
delete:
summary: Delete a job
description: Delete an existing job.
operationId: job/delete
tags:
- Jobs
parameters:
- $ref: '#/components/parameters/X-PhraseApp-OTP'
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/id'
- description: specify the branch to use
example: my-feature-branch
name: branch
in: query
schema:
type: string
responses:
'204':
$ref: '#/components/responses/204'
'400':
$ref: '#/components/responses/400'
'404':
$ref: '#/components/responses/404'
'429':
$ref: '#/components/responses/429'
x-code-samples:
- lang: Curl
source: "curl \"https://api.phrase.com/v2/projects/:project_id/jobs/:id\" \\\n -u USERNAME_OR_ACCESS_TOKEN \\\n -X DELETE \\\n -d '{\"branch\":\"my-feature-branch\"}' \\\n -H 'Content-Type: application/json'"
- lang: CLI v2
source: 'phrase jobs delete \
--project_id <project_id> \
--id <id> \
--branch my-feature-branch \
--access_token <token>'
x-cli-version: '2.5'
/projects/{project_id}/jobs/{id}/start:
post:
summary: Start a job
description: Starts an existing job in state draft.
operationId: job/start
tags:
- Jobs
parameters:
- $ref: '#/components/parameters/X-PhraseApp-OTP'
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/job_details'
headers:
X-Rate-Limit-Limit:
$ref: '#/components/headers/X-Rate-Limit-Limit'
X-Rate-Limit-Remaining:
$ref: '#/components/headers/X-Rate-Limit-Remaining'
X-Rate-Limit-Reset:
$ref: '#/components/headers/X-Rate-Limit-Reset'
'400':
$ref: '#/components/responses/400'
'404':
$ref: '#/components/responses/404'
'429':
$ref: '#/components/responses/429'
x-code-samples:
- lang: Curl
source: "curl \"https://api.phrase.com/v2/projects/:project_id/jobs/:id/start\" \\\n -u USERNAME_OR_ACCESS_TOKEN \\\n -X POST \\\n -d '{\"branch\":\"my-feature-branch\"}' \\\n -H 'Content-Type: application/json'"
- lang: CLI v2
source: 'phrase jobs start \
--project_id <project_id> \
--id <id> \
--data ''{"branch":"my-feature-branch"}'' \
--access_token <token>'
requestBody:
required: true
content:
application/json:
schema:
type: object
title: job/start/parameters
properties:
branch:
description: specify the branch to use
type: string
example: my-feature-branch
x-cli-version: '2.5'
/projects/{project_id}/jobs/{id}/complete:
post:
summary: Complete a job
description: Mark a job as completed.
operationId: job/complete
tags:
- Jobs
parameters:
- $ref: '#/components/parameters/X-PhraseApp-OTP'
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/job_details'
headers:
X-Rate-Limit-Limit:
$ref: '#/components/headers/X-Rate-Limit-Limit'
X-Rate-Limit-Remaining:
$ref: '#/components/headers/X-Rate-Limit-Remaining'
X-Rate-Limit-Reset:
$ref: '#/components/headers/X-Rate-Limit-Reset'
'400':
$ref: '#/components/responses/400'
'404':
$ref: '#/components/responses/404'
'429':
$ref: '#/components/responses/429'
x-code-samples:
- lang: Curl
source: "curl \"https://api.phrase.com/v2/projects/:project_id/jobs/:id/complete\" \\\n -u USERNAME_OR_ACCESS_TOKEN \\\n -X POST \\\n -d '{\"branch\":\"my-feature-branch\"}' \\\n -H 'Content-Type: application/json'"
- lang: CLI v2
source: 'phrase jobs complete \
--project_id <project_id> \
--id <id> \
--data ''{"branch":"my-feature-branch"}'' \
--access_token <token>'
requestBody:
required: true
content:
application/json:
schema:
type: object
title: job/complete/parameters
properties:
branch:
description: specify the branch to use
type: string
example: my-feature-branch
x-cli-version: '2.5'
/projects/{project_id}/jobs/{id}/reopen:
post:
summary: Reopen a job
description: Mark a job as uncompleted.
operationId: job/reopen
tags:
- Jobs
parameters:
- $ref: '#/components/parameters/X-PhraseApp-OTP'
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/job_details'
headers:
X-Rate-Limit-Limit:
$ref: '#/components/headers/X-Rate-Limit-Limit'
X-Rate-Limit-Remaining:
$ref: '#/components/headers/X-Rate-Limit-Remaining'
X-Rate-Limit-Reset:
$ref: '#/components/headers/X-Rate-Limit-Reset'
'400':
$ref: '#/components/responses/400'
'404':
$ref: '#/components/responses/404'
'429':
$ref: '#/components/responses/429'
x-code-samples:
- lang: Curl
source: "curl \"https://api.phrase.com/v2/projects/:project_id/jobs/:id/reopen\" \\\n -u USERNAME_OR_ACCESS_TOKEN \\\n -X POST \\\n -d '{\"branch\":\"my-feature-branch\"}' \\\n -H 'Content-Type: application/json'"
- lang: CLI v2
source: 'phrase jobs reopen \
--project_id <project_id> \
--id <id> \
--data ''{"branch":"my-feature-branch"}'' \
--access_token <token>'
requestBody:
required: true
content:
application/json:
schema:
type: object
title: job/reopen/parameters
properties:
branch:
description: specify the branch to use
type: string
example: my-feature-branch
x-cli-version: '2.5'
/projects/{project_id}/jobs/{id}/lock:
post:
summary: Lock a job
description: If you are the job owner, you may lock a job using this API request.
operationId: job/lock
tags:
- Jobs
parameters:
- $ref: '#/components/parameters/X-PhraseApp-OTP'
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/id'
- description: specify the branch to use
example: my-feature-branch
name: branch
in: query
schema:
type: string
responses:
'204':
$ref: '#/components/responses/204'
'400':
$ref: '#/components/responses/400'
'404':
$ref: '#/components/responses/404'
'429':
$ref: '#/components/responses/429'
x-code-samples:
- lang: Curl
source: "curl \"https://api.phrase.com/v2/projects/:project_id/jobs/:id/lock\" \\\n -u USERNAME_OR_ACCESS_TOKEN \\\n -X POST \\\n -d '{\"branch\":\"my-feature-branch\"' \\\n -H 'Content-Type: application/json'"
- lang: CLI v2
source: 'phrase jobs lock \
--project_id <project_id> \
--id <id> \
--branch my-feature-branch \
--access_token <token>'
x-cli-version: '2.5'
/projects/{project_id}/jobs/{id}/unlock:
post:
summary: Unlock a job
description: If you are the job owner, you may unlock a locked job using this API request.
operationId: job/unlock
tags:
- Jobs
parameters:
- $ref: '#/components/parameters/X-PhraseApp-OTP'
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/id'
- description: specify the branch to use
example: my-feature-branch
name: branch
in: query
schema:
type: string
responses:
'204':
$ref: '#/components/responses/204'
'400':
$ref: '#/components/responses/400'
'404':
$ref: '#/components/responses/404'
'429':
$ref: '#/components/responses/429'
x-code-samples:
- lang: Curl
source: "curl \"https://api.phrase.com/v2/projects/:project_id/jobs/:id/unlock\" \\\n -u USERNAME_OR_ACCESS_TOKEN \\\n -X POST \\\n -d '{\"branch\":\"my-feature-branch\"' \\\n -H 'Content-Type: application/json'"
- lang: CLI v2
source: 'phrase jobs unlock \
--project_id <project_id> \
--id <id> \
--branch my-feature-branch \
--access_token <token>'
x-cli-version: '2.5'
/projects/{project_id}/jobs/{id}/keys:
post:
summary: Add keys to job
description: Add multiple keys to a existing job.
operationId: job/keys/create
tags:
- Jobs
parameters:
- $ref: '#/components/parameters/X-PhraseApp-OTP'
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/id'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/job_details'
headers:
X-Rate-Limit-Limit:
$ref: '#/components/headers/X-Rate-Limit-Limit'
X-Rate-Limit-Remaining:
$ref: '#/components/headers/X-Rate-Limit-Remaining'
X-Rate-Limit-Reset:
$ref: '#/components/headers/X-Rate-Limit-Reset'
'400':
$ref: '#/components/responses/400'
'404':
$ref: '#/components/responses/404'
'429':
$ref: '#/components/responses/429'
x-code-samples:
- lang: Curl
source: "curl \"https://api.phrase.com/v2/projects/:project_id/jobs/:id/keys\" \\\n -u USERNAME_OR_ACCESS_TOKEN \\\n -X POST \\\n -d '{\"branch\":\"my-feature-branch\",\"translation_key_ids\":[\"abcd1234cdef1234abcd1234cdef1234\"]}' \\\n -H 'Content-Type: application/json'"
- lang: CLI v2
source: 'phrase jobs keys_create \
--project_id <project_id> \
--id <id> \
--data ''{"branch":"my-feature-branch", "translation_key_ids": "abcd1234cdef1234abcd1234cdef1234"}'' \
--access_token <token>'
requestBody:
required: true
content:
application/json:
schema:
type: object
title: job/keys/create/parameters
properties:
branch:
description: specify the branch to use
type: string
example: my-feature-branch
translation_key_ids:
description: ids of keys that should added to the job
type: array
items:
type: string
example:
- abcd1234cdef1234abcd1234cdef1234
x-cli-version: '2.5'
delete:
summary: Remove keys from job
description: Remove multiple keys from existing job.
operationId: job/keys/delete
tags:
- Jobs
parameters:
- $ref: '#/components/parameters/X-PhraseApp-OTP'
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/id'
responses:
'204':
$ref: '#/components/responses/204'
'400':
$ref: '#/components/responses/400'
'404':
$ref: '#/components/responses/404'
'429':
$ref: '#/components/responses/429'
x-code-samples:
- lang: Curl
source: "curl \"https://api.phrase.com/v2/projects/:project_id/jobs/:id/keys\" \\\n -u USERNAME_OR_ACCESS_TOKEN \\\n -X DELETE \\\n -d '{\"branch\":\"my-feature-branch\",\"translation_key_ids\":[\"abcd1234cdef1234abcd1234cdef1234\"]}' \\\n -H 'Content-Type: application/json'"
- lang: CLI v2
source: 'phrase jobs keys_delete \
--project_id <project_id> \
--id <id> \
--branch my-feature-branch \
--data ''{"branch": "my-feature-branch", "translation_key_ids": ["abcd1234cdef1234abcd1234cdef1234"]}'' \
--access_token <token>'
requestBody:
required: true
content:
application/json:
schema:
type: object
title: job/keys/delete/parameters
required:
- translation_key_ids
properties:
branch:
description: specify the branch to use
type: string
example: my-feature-branch
translation_key_ids:
description: ids of keys that should be deleted from the job
type: array
items:
type: string
example:
- abcd1234cdef1234abcd1234cdef1234
components:
parameters:
job_state:
description: 'filter by state of job; valid states are: `draft`, `in_progress`, `completed`'
example: completed
name: state
in: query
schema:
type: string
job_owner:
description: filter by user owning job
example: abcd1234cdef1234abcd1234cdef1234
name: owned_by
in: query
schema:
type: string
omit_translation_keys:
in: query
name: omit_translation_keys
description: Omit translation keys in the response to reduce payload size for bigger jobs
required: false
schema:
type: boolean
default: false
job_assignee:
description: filter by user assigned to job
example: abcd1234cdef1234abcd1234cdef1234
name: assigned_to
in: query
schema:
type: string
X-PhraseApp-OTP:
in: header
name: X-PhraseApp-OTP
description: Two-Factor-Authentication token (optional)
required: false
allowEmptyValue: false
schema:
type: string
job_updated_since:
description: filter by jobs updated since given date
example: '2013-02-21T00:00:00Z'
name: updated_since
in: query
schema:
type: string
branch:
name: branch
in: query
description: Branch to use
schema:
type: string
example: my-feature-branch
per_page:
in: query
name: per_page
description: Limit on the number of objects to be returned, between 1 and 100. 25 by default
required: false
allowEmptyValue: false
schema:
type: integer
example: 25
id:
in: path
name: id
description: ID
required: true
schema:
type: string
include_annotations:
in: query
name: include_annotations
description: Include job-locale annotations in the response
required: false
schema:
type: boolean
default: false
account_id:
in: path
name: account_id
description: Account ID
required: true
schema:
type: string
project_id:
in: path
name: project_id
description: Project ID
required: true
schema:
type: string
page:
in: query
name: page
description: Page number
required: false
allowEmptyValue: false
schema:
type: integer
example: 1
schemas:
job:
type: object
title: job
properties:
id:
type: string
name:
type: string
briefing:
type: string
due_date:
type: string
format: date-time
nullable: true
state:
type: string
ticket_url:
type: string
project:
$ref: '#/components/schemas/project_short'
branch:
$ref: '#/components/schemas/branch_name'
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
example:
id: 626ea67628690c73ac86ac81eec2d185
name: Translations for new Feature
briefing: Some instructions for the translators
due_date: '2017-02-28T09:52:53Z'
state: completed
ticket_url: https://example.atlassian.net/browse/FOO
created_at: '2017-01-28T09:52:53Z'
updated_at: '2017-01-28T09:52:53Z'
project:
id: abcd1234cdef1234abcd1234cdef1234
name: My Android Project
main_format: xml
created_at: '2015-01-28T09:52:53Z'
updated_at: '2015-01-28T09:52:53Z'
key_preview:
type: object
title: key_preview
properties:
id:
type: string
name:
type: string
plural:
type: boolean
use_ordinal_rules:
type: boolean
example: null
project_short:
type: object
title: project_short
properties:
id:
type: string
name:
type: string
main_format:
type: string
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
example:
id: abcd1234cdef1234abcd1234cdef1234
name: My Android Project
main_format: xml
# --- truncated at 32 KB (38 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/phrase/refs/heads/main/openapi/phrase-jobs-api-openapi.yml