openapi: 3.0.1
info:
contact:
email: support@transifex.com
name: Transifex Support
description: "
\n
\n\n# Introduction\n\nThis API is based on **{json:api}**.\n\n{json:api} is a specification that follows shared conventions and standards. This specification enables API discoverability and partial\nself-descriptiveness through conventions. The Json Api specification exposes resources and their relationships representations with\nunique uris and all CRUD operations are performed on those endpoints. With it's simplified approach it assists the API uniformity.\n\nRead more: https://jsonapi.org/\n\nAdditionally, this API is defined using OpenAPI (ex Swagger). This means that you can easily:\n* Generate clients in your preferred: https://swagger.io/tools/swagger-codegen/\n* Download the specification file (see above) and use it in clients like Postman etc\n\n
\n
\n\n# Pagination\n\nAll list endpoints include pagination to guarantee performant responses. Those endpoints will return `next` and `previous` links in the\nresponse payload (`links` section). The client does not have to construct any pagination specific URLs or headers, just follow those\nlinks.\n\nPage size is fixed to 150 items per page.\n\n
\n
\n\n# Content Negotiation\n\nThe basic media type for the API is `application/vnd.api+json`. If you want to execute a request that includes data (`POST`, `PATCH`, `DELETE`)\nyou should include this media type in the `Content-Type` header. The only case where a different `Content-Type` header will be accepted is for\nendpoints that can accept file like objects where the media type used should be `multipart/form-data`.\n\nThe base media type this API responds is `application/vnd.api+json`. To retrieve the data in this media type you should include it in the `Accept`\nheader. The only case where the server will return another media type is for endpoint that return file like objects.\nIn this case the media type used should be `*/*` and the server will prioritize the negotiation to the media type dictated from the file.\nNote that `application/vnd.api+json` will be also available for accept header in these cases and will return a JSON serialized representation of the file.\n\nRead more here: https://jsonapi.org/format/#content-negotiation\n\n# File Uploads\n\nThere are three different methods for uploading file content to Transifex:\n* Using Content-Type `application/vnd.api+json` the content must\n be JSON serializable.\n - For content that is directly JSON serializable you can dump the content\n of the file directly and set the `content_encoding` attribute to `text`.\n - For any content, even if it's not JSON serializable (eg .xlsx, .idml or .docx file extensions),\n you can encode the file using the `base64` encoding and set the `content_encoding` attribute to `base64`.\n* Using Content-Type `multipart/form-data` the content can be any raw file, and can\n be send without further processing.\n\n# Asynchronous Processing\n\nAsynchronous operations are triggered via a POST request. The response status in such cases is 202 Accepted, with a link in the Content-Location header.\nTo check the status of the operation, a client can send a request to the location given earlier.\nAn optional `callback_url` can be provided when the asynchronous operation is triggered. If such url is provided, upon completion\na HTTP POST request is executed containing all information required to identify the specific operation:\n\nExample request:\n```\nPOST callback_url HTTP/1.1\nContent-Type: application/json\n\n{\n \"data\": {\n \"type\": resource_strings_async_downloads\",\n \"id\": \"xxxxxxxxx\",\n \"attributes\": {\n \"location\": \"https://rest.api.transifex.com/resource_strings_async_downloads/xxxxxxxxx\",\n \"status\": \"succeeded\"\n }\n }\n}\n```\n\n# Restrictions\n\nThe following Plan based restrictions apply:\n* [Activity Reports](#tag/Activity-Reports) are available to Premium and up\n* [XLIFF export](#tag/Resource-Translations/paths/~1resource_translations_async_downloads/post) is available to Premium and up.\n* [Screenshots](#tag/Context-Screenshots) are available to Premium and up\n\n# Rate Limit\n\nTo maintain optimal performance and availability of the API, we limit the request rate to 500\nrequests/min or 30,000 requests / 5 minutes / IP. Polling endpoints like\n`resource_translations_async_downloads/{resource_translations_async_download_id}` and\n`resource_strings_async_downloads/{resource_strings_async_download_id}` have a rate limit of 1,200 requests/min.\nOnce past the respective limit, requests will be throttled and you will get a 429 Throttled response.\n\n\nExample response:\n```\n{\n \"errors\": [\n {\n \"code\": \"Throttled\",\n \"detail\": \"Request was throttled. Expected available in 60 seconds.\",\n \"status\": \"429\",\n \"title\": \"Throttled\"\n }\n ]\n}\n```\n\n# Authentication\n\n"
title: Transifex Activity Reports Projects API
version: '3.0'
x-logo:
altText: Transifex logo
backgroundColor: '#FFFFFF'
url: transifex-blue-logo.svg
servers:
- url: https://rest.api.transifex.com
security:
- bearerAuth: []
tags:
- description: Represents projects, as used within Transifex. Each project belongs to an organization.
name: Projects
paths:
/projects:
get:
description: Get the list of projects that belong to a single organization.
parameters:
- description: Filter results by an organization
in: query
name: filter[organization]
required: true
schema:
description: Organization identifier.
example: o:org_123
pattern: ^o:[a-zA-Z0-9._-]+$
type: string
- description: 'The cursor used for pagination. The value of the cursor must be retrieved from pagination links included in previous responses; you should not attempt to write them on your own.
'
in: query
name: page[cursor]
schema:
type: string
- in: query
name: filter[slug]
required: false
schema:
pattern: ^[a-zA-Z0-9._-]+$
type: string
- in: query
name: filter[name]
required: false
schema:
type: string
responses:
'200':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
description: List of Project objects.
items:
additionalProperties: false
properties:
attributes:
additionalProperties: false
description: Project attributes.
properties:
ai_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from Transifex AI.
'
example: false
type: boolean
archived:
description: 'If the project is archived or not. If a project is archived the pricing will be lower but no action will be available.
'
example: false
type: boolean
datetime_created:
example: XXXX-XX-XXTXX:XX:XXZ
format: date-time
type: string
datetime_modified:
example: XXXX-XX-XXTXX:XX:XXZ
format: date-time
type: string
description:
description: A description of the Project.
example: The localization effort for Transifex core project
maxLength: 255
type: string
homepage_url:
description: The homepage of the Project.
example: https://www.transifex.com
format: uri
type: string
instructions_url:
description: 'A web page containing documentation or instructions for translators, or localization tips for your community.
'
example: https://www.transifex.com/localization-tips
format: uri
type: string
license:
description: The license of the Project.
enum:
- proprietary
- open_source
- permissive_open_source
- other_open_source
type: string
logo_url:
description: The URL of the project's logo.
example: https://www.logos.com/project_logo.svg
format: uri
type: string
long_description:
description: A long description of the Project.
example: 'The localization effort for Transifex core project. Everyone is welcomed to contribute
'
maxLength: 1000
type: string
machine_translation_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from a Machine Translation.
'
example: false
type: boolean
name:
description: The name of the Project.
example: Transifex core
maxLength: 255
type: string
private:
description: 'If the project is private or not. A private project is visible only by you and your team.
'
example: false
type: boolean
repository_url:
description: The URL of the public source code repository.
example: https://www.github.com/transifex/
format: uri
type: string
slug:
description: The slug of the Project.
example: project_slug
maxLength: 255
pattern: ^[a-zA-Z0-9_-]+$
type: string
tags:
description: List of tags for the Project.
example:
- core
- casual
items:
type: string
type: array
translation_memory_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from the common Translation Memory.
'
example: false
type: boolean
type:
description: The type of the Project.
enum:
- live
- file
type: string
required:
- slug
- name
- type
- tags
- description
- long_description
- private
- archived
- translation_memory_fillup
- machine_translation_fillup
- homepage_url
- repository_url
- instructions_url
- license
- datetime_created
- datetime_modified
- logo_url
type: object
id:
description: Project identifier.
example: o:organization_slug:p:project_slug
pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$
type: string
links:
additionalProperties: false
description: Project self link.
properties:
self:
description: Project details link.
example: /projects/o:organization_slug:p:project_slug
type: string
required:
- self
type: object
relationships:
additionalProperties: false
description: Project relationships.
properties:
languages:
additionalProperties: false
properties:
links:
additionalProperties: false
description: Project languages links.
properties:
related:
description: Project language details link.
example: /projects/o:organization_slug:p:project_slug/languages
type: string
self:
description: Project language relationship link.
example: /projects/o:organization_slug:p:project_slug/relationships/languages
type: string
required:
- related
- self
type: object
required:
- links
type: object
maintainers:
additionalProperties: false
properties:
links:
additionalProperties: false
description: Project maintainers links.
properties:
related:
description: Project maintainers details link.
example: /projects/o:organization_slug:p:project_slug/maintainers
type: string
self:
description: Project maintainers relationship link.
example: /projects/o:organization_slug:p:project_slug/relationships/maintainers
type: string
required:
- self
- related
type: object
required:
- links
type: object
organization:
additionalProperties: false
properties:
data:
additionalProperties: false
description: Organization data container.
properties:
id:
description: Organization identifier.
example: o:org_123
pattern: ^o:[a-zA-Z0-9._-]+$
type: string
type:
enum:
- organizations
type: string
required:
- type
- id
type: object
links:
additionalProperties: false
properties:
related:
description: Organization details link.
example: /organizations/o:organization_slug
type: string
required:
- related
type: object
required:
- links
- data
type: object
resources:
additionalProperties: false
properties:
links:
additionalProperties: false
description: Project resources links.
properties:
related:
description: Project resources details link.
example: /resources?filter[project]:XXX
type: string
required:
- related
type: object
required:
- links
type: object
source_language:
additionalProperties: false
properties:
data:
additionalProperties: false
description: Language data container.
properties:
id:
description: Language identifier.
example: l:en_US
pattern: ^l:[a-zA-Z0-9@_.-]+$
type: string
type:
enum:
- languages
type: string
required:
- type
- id
type: object
links:
additionalProperties: false
description: Language related link.
properties:
related:
description: Language details link.
example: /languages/l:en_US
type: string
required:
- related
type: object
required:
- links
- data
type: object
team:
additionalProperties: false
properties:
data:
description: Team data container.
properties:
id:
description: Team identifier.
example: o:organization_slug:t:team_slug
pattern: ^o:[a-zA-Z0-9._-]+:t:[a-zA-Z0-9_-]+$
type: string
type:
enum:
- teams
type: string
required:
- type
- id
type: object
links:
additionalProperties: false
properties:
related:
example: /teams/o:organization_slug:t:team_slug
type: string
self:
example: /projects/o:organization_slug:t:team_slug/relationships/team
type: string
required:
- self
- related
type: object
required:
- links
- data
type: object
required:
- source_language
- organization
- team
- languages
- maintainers
- resources
type: object
type:
enum:
- projects
type: string
required:
- type
- id
- attributes
- relationships
- links
type: object
type: array
links:
additionalProperties: false
description: Pagination links.
properties:
next:
description: Project cursor link.
example: /projects?filter[organization]=o:organization_slug&page[cursor]=XXX
nullable: true
type: string
previous:
description: Project cursor link.
example: /projects?filter[organization]=o:organization_slug&page[cursor]=XXX
nullable: true
type: string
self:
description: Project details link.
example: /projects/o:organization_slug:p:project_slug
type: string
required:
- self
- next
- previous
type: object
required:
- links
- data
type: object
description: Get a list of all the projects for a given organization
'400':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'401':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: unauthorized
type: string
detail:
example: Please verify your credentials
type: string
status:
example: '401'
type: string
title:
example: Unauthorized
type: string
type: object
type: array
type: object
description: Unauthorized
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'409':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: conflict
type: string
detail:
example: Value `some_field_value` already exists
type: string
source:
additionalProperties: false
properties:
pointer:
example: /data/attributes/some_field
type: string
type: object
status:
example: '409'
type: string
title:
example: Field `some_field` conflicted
type: string
type: object
type: array
type: object
description: Conflict
'500':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: server error
type: string
detail:
example: Something went wrong, please try again
type: string
status:
example: '500'
type: string
title:
example: Something went wrong
type: string
type: object
type: array
type: object
description: Internal Error
summary: List projects
tags:
- Projects
x-released: true
post:
requestBody:
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
additionalProperties: false
description: Create project body request details.
properties:
attributes:
additionalProperties: false
properties:
ai_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from Transifex AI.
'
example: false
type: boolean
description:
description: A description of the Project.
example: The localization effort for Transifex core project
maxLength: 255
type: string
homepage_url:
description: The homepage of the Project.
example: https://www.transifex.com
format: uri
type: string
instructions_url:
description: 'A web page containing documentation or instructions for translators, or localization tips for your community.
'
example: https://www.transifex.com/localization-tips
format: uri
type: string
license:
description: The license of the Project.
enum:
- proprietary
- open_source
- permissive_open_source
- other_open_source
type: string
long_description:
description: A long description of the Project.
example: 'The localization effort for Transifex core project. Everyone is welcomed to contribute
'
maxLength: 1000
type: string
machine_translation_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from a Machine Translation.
'
example: false
type: boolean
name:
description: The name of the Project.
example: Transifex core
maxLength: 255
type: string
private:
description: 'If the project is private or not. A private project is visible only by you and your team.
'
example: false
type: boolean
repository_url:
description: The URL of the public source code repository.
example: https://www.github.com/transifex/
format: uri
type: string
slug:
description: The slug of the Project.
example: project_slug
maxLength: 255
pattern: ^[a-zA-Z0-9_-]+$
type: string
tags:
description: List of tags for the Project.
example:
- core
- casual
items:
type: string
type: array
translation_memory_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from the common Translation Memory.
'
example: false
type: boolean
type:
description: The type of the Project.
enum:
- live
- file
type: string
required:
- slug
- name
- private
type: object
relationships:
additionalProperties: false
description: Resource parent relationships.
properties:
organization:
additionalProperties: false
description: The `organization` resource the project should belong to.
properties:
data:
additionalProperties: false
description: Organization data container.
properties:
id:
description: Organization identifier.
example: o:org_123
pattern: ^o:[a-zA-Z0-9._-]+$
type: string
type:
enum:
- organizations
type: string
required:
- type
- id
type: object
required:
- data
type: object
source_language:
additionalProperties: false
description: The `language` resource the project is translated from.
properties:
data:
additionalProperties: false
description: Language data container.
properties:
id:
description: Language identifier.
example: l:en_US
pattern: ^l:[a-zA-Z0-9@_.-]+$
type: string
type:
enum:
- languages
type: string
required:
- type
- id
type: object
required:
- data
type: object
team:
additionalProperties: false
description: The `team` resource the project should belong to.
properties:
data:
description: Team data container.
properties:
id:
description: Team identifier.
example: o:organization_slug:t:team_slug
pattern: ^o:[a-zA-Z0-9._-]+:t:[a-zA-Z0-9_-]+$
type: string
type:
enum:
- teams
type: string
required:
- type
- id
type: object
required:
- data
type: object
required:
- organization
- source_language
type: object
type:
enum:
- projects
type: string
required:
- type
- attributes
- relationships
type: object
required:
- data
type: object
required: true
responses:
'200':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
additionalProperties: false
properties:
attributes:
additionalProperties: false
description: Project attributes.
properties:
ai_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from Transifex AI.
'
example: false
type: boolean
archived:
description: 'If the project is archived or not. If a project is archived the pricing will be lower but no action will be available.
'
example: false
type: boolean
datetime_created:
example: XXXX-XX-XXTXX:XX:XXZ
format: date-time
type: string
datetime_modified:
example: XXXX-XX-XXTXX:XX:XXZ
format: date-time
type: string
description:
description: A description of the Project.
example: The localization effort for Transifex core project
maxLength: 255
type: string
homepage_url:
description: The homepage of the Project.
example: https://www.transifex.com
format: uri
type: string
instructions_url:
description: 'A web page containing documentation or instructions for translators, or localization tips for your community.
'
example: https://www.transifex.com/localization-tips
format: uri
type: string
license:
description: The license of the Project.
enum:
- proprietary
- open_source
- permissive_open_source
- other_open_source
type: string
logo_url:
description: The URL of the project's logo.
example: https://www.logos.com/project_logo.svg
format: uri
type: string
long_description:
description: A long description of the Project.
example: 'The localization effort for Transifex core project. Everyone is welcomed to contribute
'
maxLength: 1000
type: string
machine_translation_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from a Machine Translation.
'
example: false
type: boolean
name:
description: The name of the Project.
example: Transifex core
maxLength: 255
type: string
private:
description: 'If the project is private or not. A private project is visible only by you and your team.
'
example: false
type: boolean
repository_url:
description: The URL of the public source code repository.
example: https://www.github.com/transifex/
format: uri
type: string
slug:
description: The slug of the Project.
example: project_slug
maxLength: 255
pattern: ^[a-zA-Z0-9_-]+$
type: string
tags:
description: List of tags for the Project.
example:
- core
- casual
items:
type: string
type: array
translation_memory_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from the common Translation Memory.
'
example: false
type: boolean
type:
description: The type of the Project.
enum:
- live
- file
type: string
required:
- slug
- name
- type
- tags
- description
- long_description
- private
- archived
- translation_memory_fillup
- machine_translation_fillup
- homepage_url
- repository_url
- instructions_url
- license
- datetime_created
- datetime_modified
- logo_url
type: object
id:
description: Project identifier.
example: o:organization_slug:p:project_slug
pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$
type: string
links:
additionalProperties: false
description: Project self link.
properties:
self:
description: Project details link.
example: /projects/o:organization_slug:p:project_slug
type: string
required:
- self
type: object
relationships:
additionalProperties: false
description: Project relationships.
properties:
languages:
additionalProperties: false
properties:
links:
additionalProperties: false
description: Project languages links.
properties:
related:
description: Project language details link.
example: /projects/o:organization_slug:p:project_slug/languages
type: string
self:
description: Project language relationship link.
example: /projects/o:organization_slug:p:project_slug/relationships/languages
type: string
required:
- related
- self
type: object
required:
- links
type: object
maintainers:
additionalProperties: false
properties:
links:
additionalProperties: false
description: Project maintainers links.
properties:
related:
description: Project maintainers details link.
example: /projects/o:organization_slug:p:project_slug/maintainers
type: string
self:
description: Project maintainers relationship link.
example: /projects/o:organization_slug:p:project_slug/relationships/maintainers
type: string
required:
- self
- related
type: object
required:
- links
type: object
organization:
additionalProperties: false
properties:
data:
additionalProperties: false
description: Organization data container.
properties:
id:
description: Organization identifier.
example: o:org_123
pattern: ^o:[a-zA-Z0-9._-]+$
type: string
type:
enum:
- organizations
type: string
required:
- type
- id
type: object
links:
additionalProperties: false
properties:
related:
description: Organization details link.
example: /organizations/o:organization_slug
type: string
required:
- related
type: object
required:
- links
- data
type: object
resources:
additionalProperties: false
properties:
links:
additionalProperties: false
description: Project resources links.
properties:
related:
description: Project resources details link.
example: /resources?filter[project]:XXX
type: string
required:
- related
type: object
required:
- links
type: object
source_language:
additionalProperties: false
properties:
data:
additionalProperties: false
description: Language data container.
properties:
id:
description: Language identifier.
example: l:en_US
pattern: ^l:[a-zA-Z0-9@_.-]+$
type: string
type:
enum:
- languages
type: string
required:
- type
- id
type: object
links:
additionalProperties: false
description: Language related link.
properties:
related:
description: Language details link.
example: /languages/l:en_US
type: string
required:
- related
type: object
required:
- links
- data
type: object
team:
additionalProperties: false
properties:
data:
description: Team data container.
properties:
id:
description: Team identifier.
example: o:organization_slug:t:team_slug
pattern: ^o:[a-zA-Z0-9._-]+:t:[a-zA-Z0-9_-]+$
type: string
type:
enum:
- teams
type: string
required:
- type
- id
type: object
links:
additionalProperties: false
properties:
related:
example: /teams/o:organization_slug:t:team_slug
type: string
self:
example: /projects/o:organization_slug:t:team_slug/relationships/team
type: string
required:
- self
- related
type: object
required:
- links
- data
type: object
required:
- source_language
- organization
- team
- languages
- maintainers
- resources
type: object
type:
enum:
- projects
type: string
required:
- type
- id
- attributes
- relationships
- links
type: object
required:
- data
type: object
description: Successful Response.
'400':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: invalid
type: string
detail:
example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens
type: string
source:
anyOf:
- properties:
pointer:
example: /data/attributes/name
type: string
- properties:
parameter:
example: ?filter[foo]
type: string
status:
example: '400'
type: string
title:
example: Field `name` is invalid
type: string
type: object
type: array
type: object
description: Invalid
'402':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: payment_required
type: string
detail:
example: 'Your plan doesn''t cover the requested feature, please upgrade
'
type: string
status:
example: '402'
type: string
title:
example: Payment required
type: string
type: object
type: array
type: object
description: Payment required
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'409':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: conflict
type: string
detail:
example: Value `some_field_value` already exists
type: string
source:
additionalProperties: false
properties:
pointer:
example: /data/attributes/some_field
type: string
type: object
status:
example: '409'
type: string
title:
example: Field `some_field` conflicted
type: string
type: object
type: array
type: object
description: Conflict
summary: Create a Project
tags:
- Projects
x-released: true
/projects/{project_id}:
parameters:
- description: Format of composite id should be `o:organization_slug:p:project_slug`.
in: path
name: project_id
required: true
schema:
description: Project identifier.
example: o:organization_slug:p:project_slug
pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$
type: string
summary: Project details
delete:
description: Delete a project.
responses:
'204':
description: No Content
'401':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: unauthorized
type: string
detail:
example: Please verify your credentials
type: string
status:
example: '401'
type: string
title:
example: Unauthorized
type: string
type: object
type: array
type: object
description: Unauthorized
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'500':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: server error
type: string
detail:
example: Something went wrong, please try again
type: string
status:
example: '500'
type: string
title:
example: Something went wrong
type: string
type: object
type: array
type: object
description: Internal Error
summary: Delete Project
tags:
- Projects
x-released: true
get:
description: Get the details of a specific project.
responses:
'200':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
additionalProperties: false
properties:
attributes:
additionalProperties: false
description: Project attributes.
properties:
ai_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from Transifex AI.
'
example: false
type: boolean
archived:
description: 'If the project is archived or not. If a project is archived the pricing will be lower but no action will be available.
'
example: false
type: boolean
datetime_created:
example: XXXX-XX-XXTXX:XX:XXZ
format: date-time
type: string
datetime_modified:
example: XXXX-XX-XXTXX:XX:XXZ
format: date-time
type: string
description:
description: A description of the Project.
example: The localization effort for Transifex core project
maxLength: 255
type: string
homepage_url:
description: The homepage of the Project.
example: https://www.transifex.com
format: uri
type: string
instructions_url:
description: 'A web page containing documentation or instructions for translators, or localization tips for your community.
'
example: https://www.transifex.com/localization-tips
format: uri
type: string
license:
description: The license of the Project.
enum:
- proprietary
- open_source
- permissive_open_source
- other_open_source
type: string
logo_url:
description: The URL of the project's logo.
example: https://www.logos.com/project_logo.svg
format: uri
type: string
long_description:
description: A long description of the Project.
example: 'The localization effort for Transifex core project. Everyone is welcomed to contribute
'
maxLength: 1000
type: string
machine_translation_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from a Machine Translation.
'
example: false
type: boolean
name:
description: The name of the Project.
example: Transifex core
maxLength: 255
type: string
private:
description: 'If the project is private or not. A private project is visible only by you and your team.
'
example: false
type: boolean
repository_url:
description: The URL of the public source code repository.
example: https://www.github.com/transifex/
format: uri
type: string
slug:
description: The slug of the Project.
example: project_slug
maxLength: 255
pattern: ^[a-zA-Z0-9_-]+$
type: string
tags:
description: List of tags for the Project.
example:
- core
- casual
items:
type: string
type: array
translation_memory_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from the common Translation Memory.
'
example: false
type: boolean
type:
description: The type of the Project.
enum:
- live
- file
type: string
required:
- slug
- name
- type
- tags
- description
- long_description
- private
- archived
- translation_memory_fillup
- machine_translation_fillup
- homepage_url
- repository_url
- instructions_url
- license
- datetime_created
- datetime_modified
- logo_url
type: object
id:
description: Project identifier.
example: o:organization_slug:p:project_slug
pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$
type: string
links:
additionalProperties: false
description: Project self link.
properties:
self:
description: Project details link.
example: /projects/o:organization_slug:p:project_slug
type: string
required:
- self
type: object
relationships:
additionalProperties: false
description: Project relationships.
properties:
languages:
additionalProperties: false
properties:
links:
additionalProperties: false
description: Project languages links.
properties:
related:
description: Project language details link.
example: /projects/o:organization_slug:p:project_slug/languages
type: string
self:
description: Project language relationship link.
example: /projects/o:organization_slug:p:project_slug/relationships/languages
type: string
required:
- related
- self
type: object
required:
- links
type: object
maintainers:
additionalProperties: false
properties:
links:
additionalProperties: false
description: Project maintainers links.
properties:
related:
description: Project maintainers details link.
example: /projects/o:organization_slug:p:project_slug/maintainers
type: string
self:
description: Project maintainers relationship link.
example: /projects/o:organization_slug:p:project_slug/relationships/maintainers
type: string
required:
- self
- related
type: object
required:
- links
type: object
organization:
additionalProperties: false
properties:
data:
additionalProperties: false
description: Organization data container.
properties:
id:
description: Organization identifier.
example: o:org_123
pattern: ^o:[a-zA-Z0-9._-]+$
type: string
type:
enum:
- organizations
type: string
required:
- type
- id
type: object
links:
additionalProperties: false
properties:
related:
description: Organization details link.
example: /organizations/o:organization_slug
type: string
required:
- related
type: object
required:
- links
- data
type: object
resources:
additionalProperties: false
properties:
links:
additionalProperties: false
description: Project resources links.
properties:
related:
description: Project resources details link.
example: /resources?filter[project]:XXX
type: string
required:
- related
type: object
required:
- links
type: object
source_language:
additionalProperties: false
properties:
data:
additionalProperties: false
description: Language data container.
properties:
id:
description: Language identifier.
example: l:en_US
pattern: ^l:[a-zA-Z0-9@_.-]+$
type: string
type:
enum:
- languages
type: string
required:
- type
- id
type: object
links:
additionalProperties: false
description: Language related link.
properties:
related:
description: Language details link.
example: /languages/l:en_US
type: string
required:
- related
type: object
required:
- links
- data
type: object
team:
additionalProperties: false
properties:
data:
description: Team data container.
properties:
id:
description: Team identifier.
example: o:organization_slug:t:team_slug
pattern: ^o:[a-zA-Z0-9._-]+:t:[a-zA-Z0-9_-]+$
type: string
type:
enum:
- teams
type: string
required:
- type
- id
type: object
links:
additionalProperties: false
properties:
related:
example: /teams/o:organization_slug:t:team_slug
type: string
self:
example: /projects/o:organization_slug:t:team_slug/relationships/team
type: string
required:
- self
- related
type: object
required:
- links
- data
type: object
required:
- source_language
- organization
- team
- languages
- maintainers
- resources
type: object
type:
enum:
- projects
type: string
required:
- type
- id
- attributes
- relationships
- links
type: object
required:
- data
type: object
description: Successful Response.
'400':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: invalid
type: string
detail:
example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens
type: string
source:
anyOf:
- properties:
pointer:
example: /data/attributes/name
type: string
- properties:
parameter:
example: ?filter[foo]
type: string
status:
example: '400'
type: string
title:
example: Field `name` is invalid
type: string
type: object
type: array
type: object
description: Invalid
'401':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: unauthorized
type: string
detail:
example: Please verify your credentials
type: string
status:
example: '401'
type: string
title:
example: Unauthorized
type: string
type: object
type: array
type: object
description: Unauthorized
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'500':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: server error
type: string
detail:
example: Something went wrong, please try again
type: string
status:
example: '500'
type: string
title:
example: Something went wrong
type: string
type: object
type: array
type: object
description: Internal Error
security:
- bearerAuth: []
summary: Get project details
tags:
- Projects
x-released: true
patch:
requestBody:
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
additionalProperties: false
description: Update project body request details.
minProperties: 3
properties:
attributes:
additionalProperties: false
minProperties: 1
properties:
ai_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from Transifex AI.
'
example: false
type: boolean
archived:
description: 'If the project is archived or not. If a project is archived the pricing will be lower but no action will be available.
'
example: false
type: boolean
description:
description: A description of the Project.
example: The localization effort for Transifex core project
maxLength: 255
type: string
homepage_url:
description: The homepage of the Project.
example: https://www.transifex.com
format: uri
type: string
instructions_url:
description: 'A web page containing documentation or instructions for translators, or localization tips for your community.
'
example: https://www.transifex.com/localization-tips
format: uri
type: string
license:
description: The license of the Project.
enum:
- proprietary
- open_source
- permissive_open_source
- other_open_source
type: string
long_description:
description: A long description of the Project.
example: 'The localization effort for Transifex core project. Everyone is welcomed to contribute
'
maxLength: 1000
type: string
machine_translation_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from a Machine Translation.
'
example: false
type: boolean
name:
description: The name of the Project.
example: Transifex core
maxLength: 255
type: string
private:
description: 'If the project is private or not. A private project is visible only by you and your team.
'
example: false
type: boolean
repository_url:
description: The URL of the public source code repository.
example: https://www.github.com/transifex/
format: uri
type: string
tags:
description: List of tags for the Project.
example:
- core
- casual
items:
type: string
type: array
translation_memory_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from the common Translation Memory.
'
example: false
type: boolean
type: object
id:
description: Project identifier.
example: o:organization_slug:p:project_slug
pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$
type: string
relationships:
additionalProperties: false
properties:
team:
additionalProperties: false
properties:
data:
description: Team data container.
properties:
id:
description: Team identifier.
example: o:organization_slug:t:team_slug
pattern: ^o:[a-zA-Z0-9._-]+:t:[a-zA-Z0-9_-]+$
type: string
type:
enum:
- teams
type: string
required:
- type
- id
type: object
required:
- data
type: object
required:
- team
type: object
type:
enum:
- projects
type: string
required:
- id
- type
type: object
required:
- data
type: object
required: true
responses:
'200':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
description: List of resource string comment objects.
items:
additionalProperties: false
properties:
attributes:
additionalProperties: false
description: Project attributes.
properties:
ai_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from Transifex AI.
'
example: false
type: boolean
archived:
description: 'If the project is archived or not. If a project is archived the pricing will be lower but no action will be available.
'
example: false
type: boolean
datetime_created:
example: XXXX-XX-XXTXX:XX:XXZ
format: date-time
type: string
datetime_modified:
example: XXXX-XX-XXTXX:XX:XXZ
format: date-time
type: string
description:
description: A description of the Project.
example: The localization effort for Transifex core project
maxLength: 255
type: string
homepage_url:
description: The homepage of the Project.
example: https://www.transifex.com
format: uri
type: string
instructions_url:
description: 'A web page containing documentation or instructions for translators, or localization tips for your community.
'
example: https://www.transifex.com/localization-tips
format: uri
type: string
license:
description: The license of the Project.
enum:
- proprietary
- open_source
- permissive_open_source
- other_open_source
type: string
logo_url:
description: The URL of the project's logo.
example: https://www.logos.com/project_logo.svg
format: uri
type: string
long_description:
description: A long description of the Project.
example: 'The localization effort for Transifex core project. Everyone is welcomed to contribute
'
maxLength: 1000
type: string
machine_translation_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from a Machine Translation.
'
example: false
type: boolean
name:
description: The name of the Project.
example: Transifex core
maxLength: 255
type: string
private:
description: 'If the project is private or not. A private project is visible only by you and your team.
'
example: false
type: boolean
repository_url:
description: The URL of the public source code repository.
example: https://www.github.com/transifex/
format: uri
type: string
slug:
description: The slug of the Project.
example: project_slug
maxLength: 255
pattern: ^[a-zA-Z0-9_-]+$
type: string
tags:
description: List of tags for the Project.
example:
- core
- casual
items:
type: string
type: array
translation_memory_fillup:
default: false
description: 'If the Resources of the Project will be filled-up from the common Translation Memory.
'
example: false
type: boolean
type:
description: The type of the Project.
enum:
- live
- file
type: string
required:
- slug
- name
- type
- tags
- description
- long_description
- private
- archived
- translation_memory_fillup
- machine_translation_fillup
- homepage_url
- repository_url
- instructions_url
- license
- datetime_created
- datetime_modified
- logo_url
type: object
id:
description: Project identifier.
example: o:organization_slug:p:project_slug
pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$
type: string
links:
additionalProperties: false
description: Project self link.
properties:
self:
description: Project details link.
example: /projects/o:organization_slug:p:project_slug
type: string
required:
- self
type: object
relationships:
additionalProperties: false
description: Project relationships.
properties:
languages:
additionalProperties: false
properties:
links:
additionalProperties: false
description: Project languages links.
properties:
related:
description: Project language details link.
example: /projects/o:organization_slug:p:project_slug/languages
type: string
self:
description: Project language relationship link.
example: /projects/o:organization_slug:p:project_slug/relationships/languages
type: string
required:
- related
- self
type: object
required:
- links
type: object
maintainers:
additionalProperties: false
properties:
links:
additionalProperties: false
description: Project maintainers links.
properties:
related:
description: Project maintainers details link.
example: /projects/o:organization_slug:p:project_slug/maintainers
type: string
self:
description: Project maintainers relationship link.
example: /projects/o:organization_slug:p:project_slug/relationships/maintainers
type: string
required:
- self
- related
type: object
required:
- links
type: object
organization:
additionalProperties: false
properties:
data:
additionalProperties: false
description: Organization data container.
properties:
id:
description: Organization identifier.
example: o:org_123
pattern: ^o:[a-zA-Z0-9._-]+$
type: string
type:
enum:
- organizations
type: string
required:
- type
- id
type: object
links:
additionalProperties: false
properties:
related:
description: Organization details link.
example: /organizations/o:organization_slug
type: string
required:
- related
type: object
required:
- links
- data
type: object
resources:
additionalProperties: false
properties:
links:
additionalProperties: false
description: Project resources links.
properties:
related:
description: Project resources details link.
example: /resources?filter[project]:XXX
type: string
required:
- related
type: object
required:
- links
type: object
source_language:
additionalProperties: false
properties:
data:
additionalProperties: false
description: Language data container.
properties:
id:
description: Language identifier.
example: l:en_US
pattern: ^l:[a-zA-Z0-9@_.-]+$
type: string
type:
enum:
- languages
type: string
required:
- type
- id
type: object
links:
additionalProperties: false
description: Language related link.
properties:
related:
description: Language details link.
example: /languages/l:en_US
type: string
required:
- related
type: object
required:
- links
- data
type: object
team:
additionalProperties: false
properties:
data:
description: Team data container.
properties:
id:
description: Team identifier.
example: o:organization_slug:t:team_slug
pattern: ^o:[a-zA-Z0-9._-]+:t:[a-zA-Z0-9_-]+$
type: string
type:
enum:
- teams
type: string
required:
- type
- id
type: object
links:
additionalProperties: false
properties:
related:
example: /teams/o:organization_slug:t:team_slug
type: string
self:
example: /projects/o:organization_slug:t:team_slug/relationships/team
type: string
required:
- self
- related
type: object
required:
- links
- data
type: object
required:
- source_language
- organization
- team
- languages
- maintainers
- resources
type: object
type:
enum:
- projects
type: string
required:
- type
- id
- attributes
- relationships
- links
type: object
required:
- data
type: object
description: Successful response.
'400':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: invalid
type: string
detail:
example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens
type: string
source:
anyOf:
- properties:
pointer:
example: /data/attributes/name
type: string
- properties:
parameter:
example: ?filter[foo]
type: string
status:
example: '400'
type: string
title:
example: Field `name` is invalid
type: string
type: object
type: array
type: object
description: Invalid
'401':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: unauthorized
type: string
detail:
example: Please verify your credentials
type: string
status:
example: '401'
type: string
title:
example: Unauthorized
type: string
type: object
type: array
type: object
description: Unauthorized
'402':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: payment_required
type: string
detail:
example: 'Your plan doesn''t cover the requested feature, please upgrade
'
type: string
status:
example: '402'
type: string
title:
example: Payment required
type: string
type: object
type: array
type: object
description: Payment required
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'409':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: conflict
type: string
detail:
example: Value `some_field_value` already exists
type: string
source:
additionalProperties: false
properties:
pointer:
example: /data/attributes/some_field
type: string
type: object
status:
example: '409'
type: string
title:
example: Field `some_field` conflicted
type: string
type: object
type: array
type: object
description: Conflict
'500':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: server error
type: string
detail:
example: Something went wrong, please try again
type: string
status:
example: '500'
type: string
title:
example: Something went wrong
type: string
type: object
type: array
type: object
description: Internal Error
summary: Update a Project
tags:
- Projects
x-released: true
/projects/{project_id}/languages:
parameters:
- description: Format of composite id should be `o:organization_slug:p:project_slug`.
in: path
name: project_id
required: true
schema:
description: Project identifier.
example: o:organization_slug:p:project_slug
pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$
type: string
summary: List project languages
get:
description: Get a list of all target languages of a specific project.
responses:
'200':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
items:
additionalProperties: false
properties:
attributes:
additionalProperties: false
description: Language attributes.
properties:
code:
description: The language code as defined in CLDR.
example: en
type: string
name:
description: The name of the Language as defined in CLDR.
example: English
type: string
plural_equation:
description: The language plural rule equation as defined in CLDR.
example: (n != 1)
type: string
plural_rules:
description: Object of plural rules for Language as defined in CLDR.
items:
type: string
type: object
rtl:
description: If the language is rlt.
example: false
type: boolean
required:
- code
- name
- rtl
- plural_rules
- plural_equation
type: object
id:
description: Language identifier.
example: l:en_US
pattern: ^l:[a-zA-Z0-9@_.-]+$
type: string
links:
additionalProperties: false
description: Language links.
properties:
self:
description: Language details link.
example: /languages/l:en_US
type: string
required:
- self
type: object
type:
enum:
- languages
type: string
required:
- type
- id
- attributes
- links
type: object
type: array
links:
additionalProperties: false
description: Project languages links.
properties:
self:
description: Project language details link.
example: /projects/o:organization_slug:p:project_slug/languages
type: string
required:
- self
type: object
required:
- data
type: object
description: List of target languages for a specific Project.
'400':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: invalid
type: string
detail:
example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens
type: string
source:
anyOf:
- properties:
pointer:
example: /data/attributes/name
type: string
- properties:
parameter:
example: ?filter[foo]
type: string
status:
example: '400'
type: string
title:
example: Field `name` is invalid
type: string
type: object
type: array
type: object
description: Invalid
'401':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: unauthorized
type: string
detail:
example: Please verify your credentials
type: string
status:
example: '401'
type: string
title:
example: Unauthorized
type: string
type: object
type: array
type: object
description: Unauthorized
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'409':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: conflict
type: string
detail:
example: Value `some_field_value` already exists
type: string
source:
additionalProperties: false
properties:
pointer:
example: /data/attributes/some_field
type: string
type: object
status:
example: '409'
type: string
title:
example: Field `some_field` conflicted
type: string
type: object
type: array
type: object
description: Conflict
'500':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: server error
type: string
detail:
example: Something went wrong, please try again
type: string
status:
example: '500'
type: string
title:
example: Something went wrong
type: string
type: object
type: array
type: object
description: Internal Error
security:
- bearerAuth: []
summary: List project languages
tags:
- Projects
x-released: true
/projects/{project_id}/maintainers:
description: Project maintainers.
parameters:
- description: Format of composite id should be `o:organization_slug:p:project_slug`.
in: path
name: project_id
required: true
schema:
description: Project identifier.
example: o:organization_slug:p:project_slug
pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$
type: string
- description: 'The cursor used for pagination. The value of the cursor must be retrieved from pagination links included in previous responses; you should not attempt to write them on your own.
'
in: query
name: page[cursor]
schema:
type: string
summary: Get project maintainers
get:
description: Get the maintainers of a project.
responses:
'200':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
items:
allOf:
- description: User id.
properties:
id:
description: User identifier.
example: u:user_1
pattern: ^u:[\w.-]+$
type: string
type:
enum:
- users
type: string
required:
- type
- id
type: object
- properties:
attributes:
additionalProperties: false
description: User attributes.
properties:
username:
description: The username.
example: user_1
type: string
required:
- username
type: object
links:
additionalProperties: false
description: User links.
properties:
self:
description: User details link.
example: /users/u:user_1
type: string
required:
- self
type: object
required:
- attributes
- links
type: object
type: array
links:
additionalProperties: false
properties:
next:
example: /projects/o:organization_slug/maintainers?page[cursor]=XXX
nullable: true
type: string
previous:
example: /projects/o:organization_slug/maintainers?page[cursor]=XXX
nullable: true
type: string
self:
example: /projects/o:organization_slug/maintainers
type: string
required:
- self
- previous
- next
type: object
required:
- data
- links
type: object
description: Successful Response.
'400':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: invalid
type: string
detail:
example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens
type: string
source:
anyOf:
- properties:
pointer:
example: /data/attributes/name
type: string
- properties:
parameter:
example: ?filter[foo]
type: string
status:
example: '400'
type: string
title:
example: Field `name` is invalid
type: string
type: object
type: array
type: object
description: Invalid
'401':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: unauthorized
type: string
detail:
example: Please verify your credentials
type: string
status:
example: '401'
type: string
title:
example: Unauthorized
type: string
type: object
type: array
type: object
description: Unauthorized
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'500':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: server error
type: string
detail:
example: Something went wrong, please try again
type: string
status:
example: '500'
type: string
title:
example: Something went wrong
type: string
type: object
type: array
type: object
description: Internal Error
summary: Get project maintainers
tags:
- Projects
x-released: true
/projects/{project_id}/relationships/languages:
parameters:
- description: Format of composite id should be `o:organization_slug:p:project_slug`.
in: path
name: project_id
required: true
schema:
description: Project identifier.
example: o:organization_slug:p:project_slug
pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$
type: string
summary: Edit project-language relationships
delete:
description: Remove target language from a project.
requestBody:
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
items:
additionalProperties: false
properties:
id:
description: Language identifier.
example: l:en_US
pattern: ^l:[a-zA-Z0-9@_.-]+$
type: string
type:
enum:
- languages
type: string
required:
- type
- id
type: object
type: array
required:
- data
type: object
required: true
responses:
'204':
description: No Content
'401':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: unauthorized
type: string
detail:
example: Please verify your credentials
type: string
status:
example: '401'
type: string
title:
example: Unauthorized
type: string
type: object
type: array
type: object
description: Unauthorized
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'500':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: server error
type: string
detail:
example: Something went wrong, please try again
type: string
status:
example: '500'
type: string
title:
example: Something went wrong
type: string
type: object
type: array
type: object
description: Internal Error
security:
- bearerAuth: []
summary: Delete language relationship
tags:
- Projects
x-released: true
get:
parameters:
- description: 'The cursor used for pagination. The value of the cursor must be retrieved from pagination links included in previous responses; you should not attempt to write them on your own.
'
in: query
name: page[cursor]
schema:
type: string
responses:
'200':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
items:
additionalProperties: false
properties:
id:
description: Language identifier.
example: l:en_US
pattern: ^l:[a-zA-Z0-9@_.-]+$
type: string
type:
enum:
- languages
type: string
required:
- type
- id
type: object
type: array
links:
additionalProperties: false
description: Project Languages links.
properties:
self:
description: Project language relationships link.
example: /projects/o:organization_slug:p:project_slug/relationships/languages
type: string
required:
- self
type: object
required:
- data
- links
type: object
description: List of target language relationships of the project.
'400':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: invalid
type: string
detail:
example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens
type: string
source:
anyOf:
- properties:
pointer:
example: /data/attributes/name
type: string
- properties:
parameter:
example: ?filter[foo]
type: string
status:
example: '400'
type: string
title:
example: Field `name` is invalid
type: string
type: object
type: array
type: object
description: Invalid
'401':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: unauthorized
type: string
detail:
example: Please verify your credentials
type: string
status:
example: '401'
type: string
title:
example: Unauthorized
type: string
type: object
type: array
type: object
description: Unauthorized
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'500':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: server error
type: string
detail:
example: Something went wrong, please try again
type: string
status:
example: '500'
type: string
title:
example: Something went wrong
type: string
type: object
type: array
type: object
description: Internal Error
security:
- bearerAuth: []
summary: List language relationships
tags:
- Projects
x-released: true
patch:
description: 'Completely replace the target language of a specific project.
_**Warning**: This is a highly destructive operation._
'
requestBody:
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
items:
additionalProperties: false
description: Update project body request details.
properties:
id:
description: Language identifier.
example: l:en_US
pattern: ^l:[a-zA-Z0-9@_.-]+$
type: string
type:
enum:
- languages
type: string
required:
- type
- id
type: object
type: array
required:
- data
type: object
required: true
responses:
'204':
description: No Content.
'400':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: invalid
type: string
detail:
example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens
type: string
source:
anyOf:
- properties:
pointer:
example: /data/attributes/name
type: string
- properties:
parameter:
example: ?filter[foo]
type: string
status:
example: '400'
type: string
title:
example: Field `name` is invalid
type: string
type: object
type: array
type: object
description: Invalid
'401':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: unauthorized
type: string
detail:
example: Please verify your credentials
type: string
status:
example: '401'
type: string
title:
example: Unauthorized
type: string
type: object
type: array
type: object
description: Unauthorized
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'500':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: server error
type: string
detail:
example: Something went wrong, please try again
type: string
status:
example: '500'
type: string
title:
example: Something went wrong
type: string
type: object
type: array
type: object
description: Internal Error
security:
- bearerAuth: []
summary: Update language relationships
tags:
- Projects
x-released: true
post:
description: Add target language to the project.
requestBody:
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
items:
additionalProperties: false
properties:
id:
description: Language identifier.
example: l:en_US
pattern: ^l:[a-zA-Z0-9@_.-]+$
type: string
type:
enum:
- languages
type: string
required:
- type
- id
type: object
type: array
required:
- data
type: object
required: true
responses:
'204':
description: No Content.
'400':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: invalid
type: string
detail:
example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens
type: string
source:
anyOf:
- properties:
pointer:
example: /data/attributes/name
type: string
- properties:
parameter:
example: ?filter[foo]
type: string
status:
example: '400'
type: string
title:
example: Field `name` is invalid
type: string
type: object
type: array
type: object
description: Invalid
'401':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: unauthorized
type: string
detail:
example: Please verify your credentials
type: string
status:
example: '401'
type: string
title:
example: Unauthorized
type: string
type: object
type: array
type: object
description: Unauthorized
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'409':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: conflict
type: string
detail:
example: Value `some_field_value` already exists
type: string
source:
additionalProperties: false
properties:
pointer:
example: /data/attributes/some_field
type: string
type: object
status:
example: '409'
type: string
title:
example: Field `some_field` conflicted
type: string
type: object
type: array
type: object
description: Conflict
'500':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: server error
type: string
detail:
example: Something went wrong, please try again
type: string
status:
example: '500'
type: string
title:
example: Something went wrong
type: string
type: object
type: array
type: object
description: Internal Error
security:
- bearerAuth: []
summary: Create language relationship
tags:
- Projects
x-released: true
/projects/{project_id}/relationships/maintainers:
description: Update project maintainers.
parameters:
- description: Format of composite id should be `o:organization_slug:p:project_slug`.
in: path
name: project_id
required: true
schema:
description: Project identifier.
example: o:organization_slug:p:project_slug
pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$
type: string
summary: Edit project maintainers
delete:
description: Remove maintainers from project.
requestBody:
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
items:
description: User id.
properties:
id:
description: User identifier.
example: u:user_1
pattern: ^u:[\w.-]+$
type: string
type:
enum:
- users
type: string
required:
- type
- id
type: object
type: array
required:
- data
type: object
required: true
responses:
'204':
description: No content.
'400':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: invalid
type: string
detail:
example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens
type: string
source:
anyOf:
- properties:
pointer:
example: /data/attributes/name
type: string
- properties:
parameter:
example: ?filter[foo]
type: string
status:
example: '400'
type: string
title:
example: Field `name` is invalid
type: string
type: object
type: array
type: object
description: Invalid
'401':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: unauthorized
type: string
detail:
example: Please verify your credentials
type: string
status:
example: '401'
type: string
title:
example: Unauthorized
type: string
type: object
type: array
type: object
description: Unauthorized
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'409':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: conflict
type: string
detail:
example: Value `some_field_value` already exists
type: string
source:
additionalProperties: false
properties:
pointer:
example: /data/attributes/some_field
type: string
type: object
status:
example: '409'
type: string
title:
example: Field `some_field` conflicted
type: string
type: object
type: array
type: object
description: Conflict
'500':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: server error
type: string
detail:
example: Something went wrong, please try again
type: string
status:
example: '500'
type: string
title:
example: Something went wrong
type: string
type: object
type: array
type: object
description: Internal Error
summary: Remove maintainers from project
tags:
- Projects
x-released: true
get:
description: Get project maintainer relationships.
parameters:
- description: 'The cursor used for pagination. The value of the cursor must be retrieved from pagination links included in previous responses; you should not attempt to write them on your own.
'
in: query
name: page[cursor]
schema:
type: string
responses:
'200':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
items:
description: User id.
properties:
id:
description: User identifier.
example: u:user_1
pattern: ^u:[\w.-]+$
type: string
type:
enum:
- users
type: string
required:
- type
- id
type: object
type: array
links:
additionalProperties: false
properties:
next:
example: /projects/o:organization_slug/relationships/maintainers?page[cursor]=XXX
nullable: true
type: string
previous:
example: /projects/o:organization_slug/relationships/maintainers?page[cursor]=XXX
nullable: true
type: string
self:
example: /projects/o:organization_slug/relationships/maintainers
type: string
required:
- self
- previous
- next
type: object
required:
- data
- links
type: object
description: Successful Response.
'400':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: invalid
type: string
detail:
example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens
type: string
source:
anyOf:
- properties:
pointer:
example: /data/attributes/name
type: string
- properties:
parameter:
example: ?filter[foo]
type: string
status:
example: '400'
type: string
title:
example: Field `name` is invalid
type: string
type: object
type: array
type: object
description: Invalid
'401':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: unauthorized
type: string
detail:
example: Please verify your credentials
type: string
status:
example: '401'
type: string
title:
example: Unauthorized
type: string
type: object
type: array
type: object
description: Unauthorized
'402':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: payment_required
type: string
detail:
example: 'Your plan doesn''t cover the requested feature, please upgrade
'
type: string
status:
example: '402'
type: string
title:
example: Payment required
type: string
type: object
type: array
type: object
description: Payment required
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'500':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: server error
type: string
detail:
example: Something went wrong, please try again
type: string
status:
example: '500'
type: string
title:
example: Something went wrong
type: string
type: object
type: array
type: object
description: Internal Error
summary: Get project maintainer relationships
tags:
- Projects
x-released: true
patch:
description: 'Completely replace project maintainers.
_**Warning**: This is a highly destructive operation._
'
requestBody:
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
items:
description: User id.
properties:
id:
description: User identifier.
example: u:user_1
pattern: ^u:[\w.-]+$
type: string
type:
enum:
- users
type: string
required:
- type
- id
type: object
type: array
required:
- data
type: object
required: true
responses:
'204':
description: No content.
'400':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: invalid
type: string
detail:
example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens
type: string
source:
anyOf:
- properties:
pointer:
example: /data/attributes/name
type: string
- properties:
parameter:
example: ?filter[foo]
type: string
status:
example: '400'
type: string
title:
example: Field `name` is invalid
type: string
type: object
type: array
type: object
description: Invalid
'401':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: unauthorized
type: string
detail:
example: Please verify your credentials
type: string
status:
example: '401'
type: string
title:
example: Unauthorized
type: string
type: object
type: array
type: object
description: Unauthorized
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'409':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: conflict
type: string
detail:
example: Value `some_field_value` already exists
type: string
source:
additionalProperties: false
properties:
pointer:
example: /data/attributes/some_field
type: string
type: object
status:
example: '409'
type: string
title:
example: Field `some_field` conflicted
type: string
type: object
type: array
type: object
description: Conflict
'500':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: server error
type: string
detail:
example: Something went wrong, please try again
type: string
status:
example: '500'
type: string
title:
example: Something went wrong
type: string
type: object
type: array
type: object
description: Internal Error
summary: Update project maintainers
tags:
- Projects
x-released: true
post:
description: Add maintainers to project.
requestBody:
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
items:
description: User id.
properties:
id:
description: User identifier.
example: u:user_1
pattern: ^u:[\w.-]+$
type: string
type:
enum:
- users
type: string
required:
- type
- id
type: object
type: array
required:
- data
type: object
required: true
responses:
'204':
description: No content.
'400':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: invalid
type: string
detail:
example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens
type: string
source:
anyOf:
- properties:
pointer:
example: /data/attributes/name
type: string
- properties:
parameter:
example: ?filter[foo]
type: string
status:
example: '400'
type: string
title:
example: Field `name` is invalid
type: string
type: object
type: array
type: object
description: Invalid
'401':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: unauthorized
type: string
detail:
example: Please verify your credentials
type: string
status:
example: '401'
type: string
title:
example: Unauthorized
type: string
type: object
type: array
type: object
description: Unauthorized
'402':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: payment_required
type: string
detail:
example: 'Your plan doesn''t cover the requested feature, please upgrade
'
type: string
status:
example: '402'
type: string
title:
example: Payment required
type: string
type: object
type: array
type: object
description: Payment required
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'409':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: conflict
type: string
detail:
example: Value `some_field_value` already exists
type: string
source:
additionalProperties: false
properties:
pointer:
example: /data/attributes/some_field
type: string
type: object
status:
example: '409'
type: string
title:
example: Field `some_field` conflicted
type: string
type: object
type: array
type: object
description: Conflict
'500':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: server error
type: string
detail:
example: Something went wrong, please try again
type: string
status:
example: '500'
type: string
title:
example: Something went wrong
type: string
type: object
type: array
type: object
description: Internal Error
summary: Add maintainers to project
tags:
- Projects
x-released: true
/projects/{project_id}/relationships/team:
parameters:
- description: Format of composite id should be `o:organization_slug:p:project_slug`.
in: path
name: project_id
required: true
schema:
description: Project identifier.
example: o:organization_slug:p:project_slug
pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$
type: string
summary: Update team relationship
get:
responses:
'200':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
description: Team data container.
properties:
id:
description: Team identifier.
example: o:organization_slug:t:team_slug
pattern: ^o:[a-zA-Z0-9._-]+:t:[a-zA-Z0-9_-]+$
type: string
type:
enum:
- teams
type: string
required:
- type
- id
type: object
links:
additionalProperties: false
properties:
related:
example: /teams/o:organization_slug:t:team_slug
type: string
self:
example: /projects/o:organization_slug:t:team_slug/relationships/team
type: string
required:
- self
- related
type: object
required:
- data
- links
type: object
description: Team relationship details.
'400':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: invalid
type: string
detail:
example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens
type: string
source:
anyOf:
- properties:
pointer:
example: /data/attributes/name
type: string
- properties:
parameter:
example: ?filter[foo]
type: string
status:
example: '400'
type: string
title:
example: Field `name` is invalid
type: string
type: object
type: array
type: object
description: Invalid
'401':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: unauthorized
type: string
detail:
example: Please verify your credentials
type: string
status:
example: '401'
type: string
title:
example: Unauthorized
type: string
type: object
type: array
type: object
description: Unauthorized
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'500':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: server error
type: string
detail:
example: Something went wrong, please try again
type: string
status:
example: '500'
type: string
title:
example: Something went wrong
type: string
type: object
type: array
type: object
description: Internal Error
summary: Get team relationship
tags:
- Projects
x-released: true
patch:
description: Update team relationship to set a new team to the project.
requestBody:
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
data:
additionalProperties: false
properties:
id:
description: Team identifier.
example: o:organization_slug:t:team_slug
pattern: ^o:[a-zA-Z0-9._-]+:t:[a-zA-Z0-9_-]+$
type: string
type:
enum:
- teams
type: string
required:
- type
- id
type: object
required:
- data
type: object
required: true
responses:
'204':
description: No Content.
'400':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: invalid
type: string
detail:
example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens
type: string
source:
anyOf:
- properties:
pointer:
example: /data/attributes/name
type: string
- properties:
parameter:
example: ?filter[foo]
type: string
status:
example: '400'
type: string
title:
example: Field `name` is invalid
type: string
type: object
type: array
type: object
description: Invalid
'401':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: unauthorized
type: string
detail:
example: Please verify your credentials
type: string
status:
example: '401'
type: string
title:
example: Unauthorized
type: string
type: object
type: array
type: object
description: Unauthorized
'403':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: true
properties:
code:
example: forbidden
type: string
detail:
example: You do not have permissions to perform this action
type: string
status:
example: '403'
type: string
title:
example: Operation not allowed
type: string
type: object
type: array
type: object
description: Forbidden
'404':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
properties:
code:
example: not found
type: string
detail:
example: Object not found. It may have been deleted or not been created yet
type: string
status:
example: '404'
type: string
title:
example: Object not found
type: string
type: object
type: array
type: object
description: Not found
'500':
content:
application/vnd.api+json:
schema:
additionalProperties: false
properties:
errors:
items:
additionalProperties: false
properties:
code:
example: server error
type: string
detail:
example: Something went wrong, please try again
type: string
status:
example: '500'
type: string
title:
example: Something went wrong
type: string
type: object
type: array
type: object
description: Internal Error
summary: Update team relationship
tags:
- Projects
x-released: true
components:
securitySchemes:
bearerAuth:
description: 'To use the API you need to authenticate your requests using Token Authentication. Specifically, you need to
* Acquire an authentication token from the Transifex (under user settings)
* Uses the `Bearer` keyword and prepend the token when passing the header.
For example, if the authentication token is `1/0b4e75552e481aeae813aebad53f3de3fcc67ccd`, then the HTTP header should look like this:
`Authorization: Bearer 1/0b4e75552e481aeae813aebad53f3de3fcc67ccd`
To create an API token:
1. Head to your User Settings by going to the main navigation, and clicking on your profile image in the top right corner.
2. In the left menu, click on API token.
3. Click Generate a token.
Once you''ve generated a token, you can edit its name so it''s easier to remember where you use the token.
To keep your API token secure, we''ll only show it once, so please be sure to save it somewhere secure.
In case you lose your API token, you can regenerate a new one at any time. However, when you regenerate
a new token, you''ll need to update your applications and replace the old token with the new one.
'
scheme: bearer
type: http