Phrase Style guides API
The Style guides API from Phrase — 2 operation(s) for style guides.
The Style guides API from Phrase — 2 operation(s) for style guides.
openapi: 3.0.3
info:
title: Phrase Strings API Reference Accounts Style guides 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: Style guides
paths:
/projects/{project_id}/styleguides:
get:
summary: List style guides
description: List all styleguides for the given project.
operationId: styleguides/list
tags:
- Style guides
parameters:
- $ref: '#/components/parameters/X-PhraseApp-OTP'
- $ref: '#/components/parameters/project_id'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/per_page'
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/styleguide'
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/styleguides\" \\\n -u USERNAME_OR_ACCESS_TOKEN"
- lang: CLI v2
source: 'phrase styleguides list \
--project_id <project_id> \
--access_token <token>'
x-cli-version: '2.5'
post:
summary: Create a style guide
description: Create a new style guide.
operationId: styleguide/create
tags:
- Style guides
parameters:
- $ref: '#/components/parameters/X-PhraseApp-OTP'
- $ref: '#/components/parameters/project_id'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/styleguide_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/styleguides\" \\\n -u USERNAME_OR_ACCESS_TOKEN \\\n -X POST \\\n -d '{\"title\":\"Web application style guide\",\"audience\":\"customer-facing\",\"target_audience\":\"teenager\",\"grammatical_person\":\"first_person_singular\",\"vocabulary_type\":\"technical\",\"business\":\"We are a travel site that helps customers find the best hotels and flights.\",\"company_branding\":\"ACME Inc. should never be translated.\",\"formatting\":\"Never use capital letters\",\"glossary_terms\":\"Apartment, cabin, loft\",\"grammar_consistency\":\",\"literal_translation\":\"Neutral\",\"overall_tone\":\"Tone should be fun and light\",\"samples\":\"http://www.myexample.com/my/document/path/to/samples.pdf\"}' \\\n -H 'Content-Type: application/json'"
- lang: CLI v2
source: 'phrase styleguides create \
--project_id <project_id> \
--data ''{"title": "Web application style guide", "audience":"customer-facing", "target_audience":"teenager", "grammatical_person":"first_person_singular", "vocabulary_type":"technical", "business": "We are a travel site that helps customers find the best hotels and flights.", "company_branding": "ACME Inc. should never be translated.", "formatting": "Never use capital letters", "glossary_terms": "Apartment, cabin, loft", "grammar_consistency":", "literal_translation":"Neutral", "overall_tone": "Tone should be fun and light", "samples": "http://www.myexample.com/my/document/path/to/samples.pdf"}'' \
--access_token <token>'
requestBody:
required: true
content:
application/json:
schema:
type: object
title: styleguide/create/parameters
required:
- title
properties:
title:
description: Style guide title
type: string
example: Web application style guide
audience:
description: Audience description
type: string
example: customer-facing
target_audience:
description: 'Can be one of: not_specified, children, teenager, young_adults, adults, old_adults.'
type: string
example: teenager
grammatical_person:
description: 'Can be one of: not_specified, first_person_singular, second_person_singular, third_person_singular_masculine, third_person_singular_feminine, third_person_singular_neuter, first_person_plural, second_person_plural, third_person_plural.'
type: string
example: first_person_singular
vocabulary_type:
description: 'Can be one of: not_specified, popular, technical, fictional.'
type: string
example: technical
business:
description: Description of the business
type: string
example: We are a travel site that helps customers find the best hotels and flights.
company_branding:
description: Company branding to remain consistent.
type: string
example: ACME Inc. should never be translated.
formatting:
description: Formatting requirements and character limitations.
type: string
example: Never use capital letters
glossary_terms:
description: List of terms and/or phrases that need to be translated consistently.
type: string
example: Apartment, cabin, loft
grammar_consistency:
description: Formal or informal pronouns, consistent conjugation, grammatical gender
type: string
example: ''
literal_translation:
description: 'Can be one of: Cultural/Conversational, Literal, Neutral.'
type: string
example: Neutral
overall_tone:
description: Tone requirement descriptions
type: string
example: Tone should be fun and light
samples:
description: Provide links to sample product pages, FAQ pages, etc. to give the translator a point of reference. You can also provide past translations. Even snippets or short paragraphs are helpful for maintaining consistency.
type: string
example: http://www.myexample.com/my/document/path/to/samples.pdf
x-cli-version: '2.5'
/projects/{project_id}/styleguides/{id}:
get:
summary: Get a single style guide
description: Get details on a single style guide.
operationId: styleguide/show
tags:
- Style guides
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/styleguide_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/styleguides/:id\" \\\n -u USERNAME_OR_ACCESS_TOKEN"
- lang: CLI v2
source: 'phrase styleguides show \
--project_id <project_id> \
--id <id> \
--access_token <token>'
x-cli-version: '2.5'
patch:
summary: Update a style guide
description: Update an existing style guide.
operationId: styleguide/update
tags:
- Style guides
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/styleguide_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/styleguides/:id\" \\\n -u USERNAME_OR_ACCESS_TOKEN \\\n -X PATCH \\\n -d '{\"title\":\"Web application style guide\",\"audience\":\"customer-facing\",\"target_audience\":\"teenager\",\"grammatical_person\":\"first_person_singular\",\"vocabulary_type\":\"technical\",\"business\":\"We are a travel site that helps customers find the best hotels and flights.\",\"company_branding\":\"ACME Inc. should never be translated.\",\"formatting\":\"Never use capital letters\",\"glossary_terms\":\"Apartment, cabin, loft\",\"grammar_consistency\":\",\"literal_translation\":\"Neutral\",\"overall_tone\":\"Tone should be fun and light\",\"samples\":\"http://www.myexample.com/my/document/path/to/samples.pdf\"}' \\\n -H 'Content-Type: application/json'"
- lang: CLI v2
source: 'phrase styleguides update \
--project_id <project_id> \
--id <id> \
--data ''{"title": "Web application style guide", "audience":"customer-facing", "target_audience":"teenager", "grammatical_person":"first_person_singular", "vocabulary_type":"technical", "business": "We are a travel site that helps customers find the best hotels and flights.", "company_branding": "ACME Inc. should never be translated.", "formatting": "Never use capital letters", "glossary_terms": "Apartment, cabin, loft", "grammar_consistency":", "literal_translation":"Neutral", "overall_tone": "Tone should be fun and light", "samples": "http://www.myexample.com/my/document/path/to/samples.pdf"}'' \
--access_token <token>'
requestBody:
required: true
content:
application/json:
schema:
type: object
title: styleguide/update/parameters
properties:
title:
description: Style guide title
type: string
example: Web application style guide
audience:
description: Audience description
type: string
example: customer-facing
target_audience:
description: 'Can be one of: not_specified, children, teenager, young_adults, adults, old_adults.'
type: string
example: teenager
grammatical_person:
description: 'Can be one of: not_specified, first_person_singular, second_person_singular, third_person_singular_masculine, third_person_singular_feminine, third_person_singular_neuter, first_person_plural, second_person_plural, third_person_plural.'
type: string
example: first_person_singular
vocabulary_type:
description: 'Can be one of: not_specified, popular, technical, fictional.'
type: string
example: technical
business:
description: Description of the business
type: string
example: We are a travel site that helps customers find the best hotels and flights.
company_branding:
description: Company branding to remain consistent.
type: string
example: ACME Inc. should never be translated.
formatting:
description: Formatting requirements and character limitations.
type: string
example: Never use capital letters
glossary_terms:
description: List of terms and/or phrases that need to be translated consistently.
type: string
example: Apartment, cabin, loft
grammar_consistency:
description: Formal or informal pronouns, consistent conjugation, grammatical gender
type: string
example: ''
literal_translation:
description: 'Can be one of: Cultural/Conversational, Literal, Neutral.'
type: string
example: Neutral
overall_tone:
description: Tone requirement descriptions
type: string
example: Tone should be fun and light
samples:
description: Provide links to sample product pages, FAQ pages, etc. to give the translator a point of reference. You can also provide past translations. Even snippets or short paragraphs are helpful for maintaining consistency.
type: string
example: http://www.myexample.com/my/document/path/to/samples.pdf
x-cli-version: '2.5'
delete:
summary: Delete a style guide
description: Delete an existing style guide.
operationId: styleguide/delete
tags:
- Style guides
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/styleguides/:id\" \\\n -u USERNAME_OR_ACCESS_TOKEN \\\n -X DELETE"
- lang: CLI v2
source: 'phrase styleguides delete \
--project_id <project_id> \
--id <id> \
--access_token <token>'
x-cli-version: '2.5'
components:
responses:
'429':
description: Rate Limiting
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'
'204':
description: The resource was deleted successfully.
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'
'404':
description: Not Found
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':
description: Bad request
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'
headers:
X-Rate-Limit-Reset:
description: Timestamp of end of current time period as UNIX timestamp, see [Rate Limiting](/en/api/strings/pagination#rate-limiting)
schema:
type: integer
X-Rate-Limit-Remaining:
description: The number of remaining requests in the current period
schema:
type: integer
X-Rate-Limit-Limit:
description: The number of allowed requests in the current period
schema:
type: integer
Link:
description: 'Links to related resources, in the format defined by
[RFC 5988](https://tools.ietf.org/html/rfc5988#section-5).
This will include a link with relation type `next` to the
next page, if there is a next page.'
schema:
type: string
Pagination:
description: Pagination details for navigating through a collection of resources, provided in JSON format.
schema:
type: object
properties:
total_count:
description: Total count of items in the collection.
type: integer
example: 10
total_pages_count:
description: Total number of pages available for the collection.
type: integer
example: 2
current_page:
description: The current page number.
type: integer
example: 1
current_per_page:
description: Number of items currently displayed per page.
type: integer
example: 5
previous_page:
description: Page number of the previous page, if available.
type: integer
next_page:
description: Page number of the next page, if available.
type: integer
example: 2
schemas:
styleguide:
type: object
title: styleguide
properties:
id:
type: string
title:
type: string
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
example:
id: abcd1234cdef1234abcd1234cdef1234
title: My Style Guide
created_at: '2015-01-28T09:52:53Z'
updated_at: '2015-01-28T09:52:53Z'
styleguide_details:
allOf:
- $ref: '#/components/schemas/styleguide'
- type: object
title: styleguide_details
properties:
public_url:
type: string
audience:
type: string
target_audience:
type: string
grammatical_person:
type: string
vocabulary_type:
type: string
business:
type: string
company_branding:
type: string
formatting:
type: string
glossary_terms:
type: string
grammar_consistency:
type: string
literal_translation:
type: string
overall_tone:
type: string
samples:
type: string
example:
public_url: https://phrase.com/styleguide/my-project/26f065cf597be340
audience: customer-facing
target_audience: teenager
grammatical_person: first_person_singular
vocabulary_type: technical
business: We are a travel site that helps customers find the best hotels and flights.
company_branding: ACME Inc. should never be translated.
formatting: Never use capital letters
glossary_terms: Apartment, cabin, loft
grammar_consistency: ''
literal_translation: Neutral
overall_tone: Tone should be fun and light
samples: http://www.myexample.com/my/document/path/to/samples.pdf
parameters:
id:
in: path
name: id
description: ID
required: true
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
page:
in: query
name: page
description: Page number
required: false
allowEmptyValue: false
schema:
type: integer
example: 1
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
project_id:
in: path
name: project_id
description: Project ID
required: true
schema:
type: string
securitySchemes:
Token:
type: apiKey
in: header
name: Authorization
description: Enter your token in the format `token TOKEN`
Basic:
type: http
scheme: basic
x-tagGroups:
- name: Core Resources
tags:
- Projects
- Locales
- Keys
- Translations
- Uploads
- Tags
- Custom Metadata Properties
- Blacklisted Keys
- Versions / History
- name: Workflows
tags:
- Spaces
- Jobs
- Job Comments
- Job Locales
- Job Templates
- Job Template Locales
- Organization Job Templates
- Organization Job Template Locales
- Comments
- Comment Reactions
- Comment Replies
- Branches
- name: Quality
tags:
- Glossaries
- Glossary Terms
- Glossary Term Translations
- name: Integrations
tags:
- Webhooks
- Distributions
- Releases
- Release Triggers
- name: Ordering
tags:
- Orders
- Style guides
- name: User management
tags:
- Authorizations
- Users
- Accounts
- Members
- Invitations
- name: Screenshots
tags:
- Screenshots
- Screenshot Markers
- name: Misc
tags:
- Formats
- name: Figma Attachments
tags:
- Figma attachments
- Key's Figma attachments