Localazy Projects API

List and create projects, and read project languages.

OpenAPI Specification

localazy-projects-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Localazy Export Projects API
  description: REST API for the Localazy localization and translation management platform. Import and upload source content, export and download translated files, list files and their keys, read project languages, and manage projects. All endpoints are relative to https://api.localazy.com and authenticated with a Bearer token (project, translation, or organization token).
  termsOfService: https://localazy.com/terms
  contact:
    name: Localazy Support
    email: team@localazy.com
    url: https://localazy.com/docs/api/introduction
  version: '1.0'
servers:
- url: https://api.localazy.com
security:
- bearerAuth: []
tags:
- name: Projects
  description: List and create projects, and read project languages.
paths:
  /projects:
    get:
      operationId: listProjects
      tags:
      - Projects
      summary: List projects
      description: Returns the projects accessible to the supplied token. A project token returns the single associated project; an organization token returns all organization projects.
      parameters:
      - name: organization
        in: query
        description: When true, includes information about the owning organization.
        required: false
        schema:
          type: boolean
      - name: languages
        in: query
        description: When true, includes the project languages and their translation statistics.
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: A list of projects.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Project'
        '401':
          description: Missing or invalid authentication token.
    post:
      operationId: createProject
      tags:
      - Projects
      summary: Create a project
      description: Creates a new project under an organization. Requires an organization token.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateProjectRequest'
      responses:
        '200':
          description: The newly created project.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateProjectResponse'
        '401':
          description: Missing or invalid authentication token.
components:
  schemas:
    Project:
      type: object
      properties:
        id:
          type: string
          description: Unique project identifier.
        orgId:
          type: string
          description: Organization identifier.
        name:
          type: string
        slug:
          type: string
        image:
          type: string
        url:
          type: string
        description:
          type: string
        type:
          type: string
          description: Project visibility - public, private, or restricted.
        tone:
          type: string
          description: Project tone - formal, informal, or not_specified.
        role:
          type: string
          description: Current user's role on the project.
        sourceLanguage:
          type: integer
          description: Source language identifier.
        organization:
          type: object
          description: Feature availability and key limits for the organization.
        languages:
          type: array
          description: Language objects with translation statistics (when languages=true).
          items:
            $ref: '#/components/schemas/Language'
    CreateProjectResponse:
      type: object
      properties:
        projectId:
          type: string
          description: Identifier of the newly created project.
    CreateProjectRequest:
      type: object
      required:
      - name
      properties:
        name:
          type: string
          description: Project name.
        slug:
          type: string
          description: Project slug; auto-generated if omitted.
        description:
          type: string
          default: ''
        sourceLanguage:
          type: string
          default: en
        type:
          type: string
          default: restricted
          description: public or restricted.
        tone:
          type: string
          default: not_specified
        useShareTM:
          type: boolean
          default: true
    Language:
      type: object
      properties:
        id:
          type: integer
        code:
          type: string
          description: Language code (for example en, cs, pt-BR).
        name:
          type: string
        rtl:
          type: boolean
        progress:
          type: integer
          description: Translation completion percentage.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'Authenticate with the header `Authorization: Bearer {token}`. Tokens may be a project token (read/write to one project), a translation token (AI translation only), or an organization token (organization scope, by request).'