> ## Documentation Index
> Fetch the complete documentation index at: https://developers.phrase.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get project

> 
This API call retrieves information specific to a project.

The level of detail in the response varies based on the user's role. Admins, Project Managers, Vendors, Buyers, and
Linguists receive different responses, detailed below.

- Details about predefined system metadata, such as client, domain, subdomain, cost center, business unit, or status.
Note that [Custom Fields](../custom-fields/lists-custom-fields), if added to projects, are not included here and require
retrieval via a dedicated Custom Fields API call. Metadata exposed to Linguists or Vendors might differ from what's
visible to Admins or Project Managers.
- [Workflow Step](https://support.phrase.com/hc/en-us/articles/5709717879324-Workflow-TMS-) information, crucial for
user or vendor assignments through APIs. When projects are created, each workflow step's global ID instantiates into a
project-specific workflow step ID necessary for user assignments. Attempting to assign the global workflow step ID
(found under Settings or via Workflow Step APIs) results in an error, as only the project-specific step can be assigned.
- Progress information indicating the total number of jobs across all workflow steps in the project, alongside the
proportion of completed and overdue jobs.




## OpenAPI

````yaml /openapi/phrase-tms-latest.json get /api2/v1/projects/{projectUid}
openapi: 3.0.0
info:
  description: |-
    Welcome to Phrase's TMS API documentation. 

     Please visit our [help center](https://support.phrase.com/hc/en-us/sections/5709662083612) for more information about the APIs. 

     If you have any questions, please contact [Support](https://support.phrase.com/hc/requests/new). 

     Please, include the `User-Agent` header with the name of your application or project. It might be a good idea to include some sort of contact information as well, so that we can get in touch if necessary. Examples of excellent `User-Agent` headers:
     > User-Agent: Example mobile app (example@phrase.com) <br/> User-Agent: ACME Inc Java 1.8 Client (http://acmeinc.com/contact)
  version: Latest
  title: Phrase TMS API
servers:
  - url: https://cloud.memsource.com/web
security:
  - ApiToken: []
  - OAuth2: []
tags:
  - name: Additional Workflow Step
  - name: Analysis
  - name: Async Request
  - name: Authentication
  - name: Automations
  - name: Bilingual File
  - name: Business Unit
  - name: Buyer
  - name: Client
  - name: Connector
  - name: Conversations
  - name: Cost Center
  - name: Custom Fields
  - name: Custom File Type
  - name: Domain
  - name: Due Date Scheme
  - name: Email Template
  - name: File
  - name: Glossary
  - name: Import settings
  - name: Job
  - name: Language AI
  - name: Language Assets
  - name: Language Quality Assessment
  - name: Machine Translation
  - name: Machine Translation Settings
  - name: Mapping
  - name: Net Rate Scheme
  - name: Notifications
  - name: Price List
  - name: Project
  - name: Project Template
  - name: Provider
  - name: Quality Assurance
  - name: Quality Profile
  - name: Quote
  - name: Reference File
  - name: SCIM
  - name: Segment
  - name: Segmentation Rules
  - name: Service
  - name: Spell Check
  - name: SubDomain
  - name: Supported Languages
  - name: Term Base
  - name: Translation
  - name: Translation Memory
  - name: User
  - name: Vendor
  - name: Webhook
  - name: Workflow Step
  - name: Workflow changes
  - name: XML Assistant
paths:
  /api2/v1/projects/{projectUid}:
    get:
      tags:
        - Project
      summary: Get project
      description: >

        This API call retrieves information specific to a project.


        The level of detail in the response varies based on the user's role.
        Admins, Project Managers, Vendors, Buyers, and

        Linguists receive different responses, detailed below.


        - Details about predefined system metadata, such as client, domain,
        subdomain, cost center, business unit, or status.

        Note that [Custom Fields](../custom-fields/lists-custom-fields), if
        added to projects, are not included here and require

        retrieval via a dedicated Custom Fields API call. Metadata exposed to
        Linguists or Vendors might differ from what's

        visible to Admins or Project Managers.

        - [Workflow
        Step](https://support.phrase.com/hc/en-us/articles/5709717879324-Workflow-TMS-)
        information, crucial for

        user or vendor assignments through APIs. When projects are created, each
        workflow step's global ID instantiates into a

        project-specific workflow step ID necessary for user assignments.
        Attempting to assign the global workflow step ID

        (found under Settings or via Workflow Step APIs) results in an error, as
        only the project-specific step can be assigned.

        - Progress information indicating the total number of jobs across all
        workflow steps in the project, alongside the

        proportion of completed and overdue jobs.
      operationId: getProject
      parameters:
        - name: projectUid
          in: path
          description: UID of the project
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AbstractProjectDtoV1'
        '400':
          description: Bad request
        '401':
          description: Not authorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '405':
          description: Method not allowed
        '408':
          description: Timeout
        '410':
          description: Gone
        '415':
          description: Unsupported media type
        '429':
          description: Too many requests
        '500':
          description: Internal server error
        '501':
          description: Not implemented
components:
  schemas:
    AbstractProjectDtoV1:
      type: object
      required:
        - userRole
      discriminator:
        propertyName: userRole
      properties:
        dateCreated:
          type: string
          format: date-time
          description: Date and time the project was created
        dateDue:
          type: string
          format: date-time
          description: >-
            Project due date; null when the organization hides progress and
            status from non-linguist, non-bot callers.
        domain:
          $ref: '#/components/schemas/DomainReferenceV1'
        id:
          type: string
          description: Internal numeric identifier, encoded as a string
        internalId:
          type: integer
          format: int32
          description: Organization-scoped sequential number shown in the UI project list
        mtSettingsPerLanguageList:
          type: array
          description: Machine translation settings per target language
          items:
            $ref: '#/components/schemas/MTSettingsPerLanguageReferenceV1'
        name:
          type: string
          description: Project name
        owner:
          $ref: '#/components/schemas/UserReferenceV1'
        references:
          type: array
          description: Reference files attached to the project
          items:
            $ref: '#/components/schemas/ReferenceFileReferenceV1'
        sourceLang:
          type: string
          description: Source language code
        subDomain:
          $ref: '#/components/schemas/SubDomainReferenceV1'
        targetLangs:
          type: array
          description: Target language codes
          uniqueItems: true
          items:
            type: string
        uid:
          type: string
          description: Unique identifier used in API paths
        userRole:
          type: string
          description: Response differs based on user's role
          readOnly: true
      description: Base projectDto
    DomainReferenceV1:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        uid:
          type: string
    MTSettingsPerLanguageReferenceV1:
      type: object
      required:
        - targetLang
      properties:
        machineTranslateSettings:
          $ref: '#/components/schemas/MachineTranslateSettingsReferenceV1'
        targetLang:
          type: string
          description: mtSettings is set for whole project if targetLang == null
    UserReferenceV1:
      type: object
      properties:
        email:
          type: string
          description: Email address of the user
        firstName:
          type: string
          description: First name of the user
        id:
          type: string
          description: Unique numeric identifier of the user
        lastName:
          type: string
          description: Last name of the user
        role:
          type: string
          description: Role of the user in the organization
          enum:
            - SYS_ADMIN
            - SYS_ADMIN_READ
            - ADMIN
            - PROJECT_MANAGER
            - LINGUIST
            - GUEST
            - SUBMITTER
            - PORTAL_MEMBER
            - BOT
        uid:
          type: string
          description: Unique string identifier of the user
        userName:
          type: string
          description: Username of the user
    ReferenceFileReferenceV1:
      type: object
      properties:
        createdBy:
          $ref: '#/components/schemas/UserReferenceV1'
        dateCreated:
          type: string
          format: date-time
        filename:
          type: string
          description: Filename of the reference file. Null for note-only references.
        id:
          type: string
        note:
          type: string
          description: Text note attached to the reference. Null if no note was provided.
        uid:
          type: string
    SubDomainReferenceV1:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        uid:
          type: string
    MachineTranslateSettingsReferenceV1:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        type:
          type: string
        uid:
          type: string
  securitySchemes:
    ApiToken:
      description: >-
        Get a token from `auth/login` [endpoint](#operation/login) and then pass
        it in the `Authorization` HTTP header in every subsequent API call. For
        more information visit our [help
        center](https://support.phrase.com/hc/en-us/articles/5709662181404-API-Authentication-TMS-#token-0-0).
      type: apiKey
      name: Authorization
      in: header
    OAuth2:
      description: >-
        A standard OAuth 2.0 authorization code flow. For more information visit
        our [help
        center](https://support.phrase.com/hc/en-us/articles/5709662181404-API-Authentication-TMS-#oauth-2-0-0-1).
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://cloud.memsource.com/web/oauth/authorize
          tokenUrl: https://cloud.memsource.com/web/oauth/token
          scopes: {}

````