openapi: 3.0.3 info: title: Phrase Strings API Reference Accounts Glossary Terms 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: Glossary Terms paths: /accounts/{account_id}/glossaries/{glossary_id}/terms: get: summary: List terms description: 'List all terms in term bases (previously: glossary) that the current user has access to.' operationId: glossary_terms/list tags: - Glossary Terms parameters: - $ref: '#/components/parameters/X-PhraseApp-OTP' - $ref: '#/components/parameters/account_id' - $ref: '#/components/parameters/glossary_id' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/per_page' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/glossary_term' 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/glossaries/:glossary_id/terms\" \\\n -u USERNAME_OR_ACCESS_TOKEN" - lang: CLI v2 source: 'phrase glossary_terms list \ --account_id \ --glossary_id \ --access_token ' x-cli-version: '2.5' post: summary: Create a term description: 'Create a new term in a term base (previously: glossary).' operationId: glossary_term/create tags: - Glossary Terms parameters: - $ref: '#/components/parameters/X-PhraseApp-OTP' - $ref: '#/components/parameters/account_id' - $ref: '#/components/parameters/glossary_id' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/glossary_term' 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/accounts/:account_id/glossaries/:glossary_id/terms\" \\\n -u USERNAME_OR_ACCESS_TOKEN \\\n -X POST \\\n -d '{\"term\":\"MyCompany\",\"description\":\"Use this when refering to our company\",\"translatable\":true,\"case_sensitive\":true}' \\\n -H 'Content-Type: application/json'" - lang: CLI v2 source: 'phrase glossary_terms create \ --account_id \ --glossary_id \ --data ''{"term":"MyCompany", "description": "Use this when refering to our company", "translatable":true, "case_sensitive":true}'' \ --access_token ' requestBody: required: true content: application/json: schema: type: object title: glossary_term/create/parameters required: - term properties: term: description: Glossary term type: string example: MyCompany description: description: Description of term type: string example: Use this when refering to our company translatable: description: Indicates whether the term should be used for all languages or can be translated type: boolean example: true case_sensitive: description: Indicates whether the term is case sensitive type: boolean example: true x-cli-version: '2.5' /accounts/{account_id}/glossaries/{glossary_id}/terms/{id}: get: summary: Get a single term description: 'Get details for a single term in the term base (previously: glossary).' operationId: glossary_term/show tags: - Glossary Terms parameters: - $ref: '#/components/parameters/X-PhraseApp-OTP' - $ref: '#/components/parameters/account_id' - $ref: '#/components/parameters/glossary_id' - $ref: '#/components/parameters/id' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/glossary_term' 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/accounts/:account_id/glossaries/:glossary_id/terms/:id\" \\\n -u USERNAME_OR_ACCESS_TOKEN" - lang: CLI v2 source: 'phrase glossary_terms show \ --account_id \ --glossary_id \ --id \ --access_token ' x-cli-version: '2.5' patch: summary: Update a term description: 'Update an existing term in a term base (previously: glossary).' operationId: glossary_term/update tags: - Glossary Terms parameters: - $ref: '#/components/parameters/X-PhraseApp-OTP' - $ref: '#/components/parameters/account_id' - $ref: '#/components/parameters/glossary_id' - $ref: '#/components/parameters/id' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/glossary_term' 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/accounts/:account_id/glossaries/:glossary_id/terms/:id\" \\\n -u USERNAME_OR_ACCESS_TOKEN \\\n -X PATCH \\\n -d '{\"term\":\"MyCompany\",\"description\":\"Use this when refering to our company\",\"translatable\":true,\"case_sensitive\":true}' \\\n -H 'Content-Type: application/json'" - lang: CLI v2 source: 'phrase glossary_terms update \ --account_id \ --glossary_id \ --id \ --data ''{"term":"MyCompany", "description": "Use this when refering to our company", "translatable":true, "case_sensitive":true}'' \ --access_token ' requestBody: required: true content: application/json: schema: type: object title: glossary_term/update/parameters properties: term: description: Glossary term type: string example: MyCompany description: description: Description of term type: string example: Use this when refering to our company translatable: description: Indicates whether the term should be used for all languages or can be translated type: boolean example: true case_sensitive: description: Indicates whether the term is case sensitive type: boolean example: true x-cli-version: '2.5' delete: summary: Delete a term description: 'Delete an existing term in a term base (previously: glossary).' operationId: glossary_term/delete tags: - Glossary Terms parameters: - $ref: '#/components/parameters/X-PhraseApp-OTP' - $ref: '#/components/parameters/account_id' - $ref: '#/components/parameters/glossary_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/accounts/:account_id/glossaries/:glossary_id/terms/:id\" \\\n -u USERNAME_OR_ACCESS_TOKEN \\\n -X DELETE" - lang: CLI v2 source: 'phrase glossary_terms delete \ --account_id \ --glossary_id \ --id \ --access_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' '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' '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' 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 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 account_id: in: path name: account_id description: Account ID required: true schema: type: string glossary_id: in: path name: glossary_id description: Glossary ID required: true 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 schemas: glossary_term: type: object title: glossary_term properties: id: type: string term: type: string description: type: string translatable: type: boolean case_sensitive: type: boolean translations: type: array items: $ref: '#/components/schemas/glossary_term_translation' created_at: type: string format: date-time updated_at: type: string format: date-time example: id: abcd1234cdef1234abcd1234cdef1233 term: Save description: This term is used on the 'Save' buttons of our website translatable: true case_sensitive: true translations: - id: abcd1234cdef1234abcd1234cdef1234 locale_code: fr-FR content: Entasser created_at: '2015-01-28T09:52:53Z' updated_at: '2015-01-28T09:52:53Z' - id: abcd1234cdef1234abcd1234cdef1235 locale_code: de-DE content: Speichern created_at: '2015-01-28T09:52:53Z' updated_at: '2015-01-28T09:52:53Z' created_at: '2015-01-28T09:52:53Z' updated_at: '2015-01-28T09:52:53Z' glossary_term_translation: type: object title: glossary_term_translation properties: id: type: string locale_code: type: string content: type: string created_at: type: string format: date-time updated_at: type: string format: date-time example: id: abcd1234cdef1234abcd1234cdef1234 locale_code: en-US content: Save created_at: '2015-01-28T09:52:53Z' updated_at: '2015-01-28T09:52:53Z' 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