> ## 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.

# List jobs

> 
API call to return a paginated list of [jobs](https://support.phrase.com/hc/en-us/articles/5709686763420-Jobs-TMS-)
in the given project.

Use the query parameters to further narrow down the searching criteria.

- **pageNumber** - A zero-based parameter indicating the page number you wish to retrieve. The total number of pages is
returned in each response in the `totalPages` field in the top level of the response.
- **pageSize** - A parameter indicating the size of the page you wish to return.
This has direct effect on the `totalPages`
retrieved in each response and can hence influence the number of times to iterate over to get all the jobs.
- **count** - When set to `true`, the response will not contain the list of jobs (the `content` field) but only the
counts of elements and pages. Can be used to quickly retrieve the number of elements and pages to iterate over.
- **workflowLevel** - A non-zero based parameter indicating which
[workflow steps](https://support.phrase.com/hc/en-us/articles/5709717879324-Workflow-TMS-)
the returned jobs belong to. If left unspecified, its value is set to 1.
- **status** - A parameter allowing for filtering only for jobs in a specific status.
- **assignedUser** - A parameter allowing for filtering only for jobs assigned to a specific user.
The parameter accepts a user ID.
- **dueInHours** - A parameter allowing for filtering only for jobs whose due date is less or equal to the number
 of hours specified.
- **filename** - A parameter allowing for filtering only for jobs with a specific file name.
- **targetLang** - A parameter allowing for filtering only for jobs with a specific target language.
- **assignedVendor** - A parameter allowing for filtering only for jobs assigned to a specific vendor.
The parameter accepts a user ID.
- **notReady** - A parameter allowing for filtering only jobs that have been imported. When set to `true` the response
 will only contain jobs that have not been imported yet.
 This will also return jobs that have not been imported correctly, e.g. due to an error.




## OpenAPI

````yaml /openapi/phrase-tms-latest.json get /api2/v2/projects/{projectUid}/jobs
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/v2/projects/{projectUid}/jobs:
    get:
      tags:
        - Job
      summary: List jobs
      description: >

        API call to return a paginated list of
        [jobs](https://support.phrase.com/hc/en-us/articles/5709686763420-Jobs-TMS-)

        in the given project.


        Use the query parameters to further narrow down the searching criteria.


        - **pageNumber** - A zero-based parameter indicating the page number you
        wish to retrieve. The total number of pages is

        returned in each response in the `totalPages` field in the top level of
        the response.

        - **pageSize** - A parameter indicating the size of the page you wish to
        return.

        This has direct effect on the `totalPages`

        retrieved in each response and can hence influence the number of times
        to iterate over to get all the jobs.

        - **count** - When set to `true`, the response will not contain the list
        of jobs (the `content` field) but only the

        counts of elements and pages. Can be used to quickly retrieve the number
        of elements and pages to iterate over.

        - **workflowLevel** - A non-zero based parameter indicating which

        [workflow
        steps](https://support.phrase.com/hc/en-us/articles/5709717879324-Workflow-TMS-)

        the returned jobs belong to. If left unspecified, its value is set to 1.

        - **status** - A parameter allowing for filtering only for jobs in a
        specific status.

        - **assignedUser** - A parameter allowing for filtering only for jobs
        assigned to a specific user.

        The parameter accepts a user ID.

        - **dueInHours** - A parameter allowing for filtering only for jobs
        whose due date is less or equal to the number
         of hours specified.
        - **filename** - A parameter allowing for filtering only for jobs with a
        specific file name.

        - **targetLang** - A parameter allowing for filtering only for jobs with
        a specific target language.

        - **assignedVendor** - A parameter allowing for filtering only for jobs
        assigned to a specific vendor.

        The parameter accepts a user ID.

        - **notReady** - A parameter allowing for filtering only jobs that have
        been imported. When set to `true` the response
         will only contain jobs that have not been imported yet.
         This will also return jobs that have not been imported correctly, e.g. due to an error.
      operationId: listPartsV2
      parameters:
        - name: projectUid
          in: path
          required: true
          schema:
            type: string
        - name: pageNumber
          in: query
          required: false
          schema:
            type: integer
            format: int32
            minimum: 0
            default: 0
        - name: pageSize
          in: query
          required: false
          schema:
            type: integer
            format: int32
            minimum: 1
            maximum: 50
            default: 50
        - name: count
          in: query
          required: false
          schema:
            type: boolean
            default: false
        - name: workflowLevel
          in: query
          required: false
          schema:
            type: integer
            format: int32
            minimum: 1
            maximum: 15
            default: 1
        - name: status
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
              enum:
                - NEW
                - ACCEPTED
                - DECLINED
                - REJECTED
                - DELIVERED
                - EMAILED
                - COMPLETED
                - CANCELLED
        - name: assignedUser
          in: query
          required: false
          schema:
            type: integer
            format: int64
        - name: dueInHours
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: filename
          in: query
          required: false
          schema:
            type: string
        - name: targetLang
          in: query
          required: false
          schema:
            type: string
        - name: assignedVendor
          in: query
          required: false
          schema:
            type: integer
            format: int64
        - name: notReady
          in: query
          required: false
          schema:
            type: boolean
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageDtoJobPartReferenceV2'
        '400':
          description: Bad request
        '401':
          description: Not authorized
        '403':
          description: Forbidden
        '404':
          description: Resource 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:
    PageDtoJobPartReferenceV2:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/JobPartReferenceV2'
        numberOfElements:
          type: integer
          format: int32
        pageNumber:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        sort:
          $ref: '#/components/schemas/Sort'
        totalElements:
          type: integer
          format: int32
        totalPages:
          type: integer
          format: int32
    JobPartReferenceV2:
      type: object
      properties:
        continuous:
          type: boolean
        dateCreated:
          type: string
          format: date-time
        dateDue:
          type: string
          format: date-time
        filename:
          type: string
        importStatus:
          $ref: '#/components/schemas/ImportStatusDtoV2'
        imported:
          type: boolean
          description: 'Default: false'
        innerId:
          type: string
          description: |-
            InnerId is a sequential number of a job in a project.
                        Jobs created from the same file share the same innerId across workflow steps
        originalFileDirectory:
          type: string
        owner:
          $ref: '#/components/schemas/UserReferenceV1'
        providers:
          type: array
          items:
            $ref: '#/components/schemas/ProviderReferenceV1'
        remoteFile:
          $ref: '#/components/schemas/JobRemoteFileReferenceV1'
        serverTaskId:
          type: string
        sourceFileUid:
          type: string
        split:
          type: boolean
        status:
          type: string
          enum:
            - NEW
            - ACCEPTED
            - DECLINED
            - REJECTED
            - DELIVERED
            - EMAILED
            - COMPLETED
            - CANCELLED
        targetLang:
          type: string
        uid:
          type: string
        workflowStep:
          $ref: '#/components/schemas/ProjectWorkflowStepReferenceV1'
    Sort:
      type: object
      properties:
        orders:
          type: array
          items:
            $ref: '#/components/schemas/SortOrder'
    ImportStatusDtoV2:
      type: object
      properties:
        errorMessage:
          type: string
        status:
          type: string
          enum:
            - RUNNING
            - ERROR
            - OK
    UserReferenceV1:
      type: object
      properties:
        email:
          type: string
        firstName:
          type: string
        id:
          type: string
        lastName:
          type: string
        role:
          type: string
          enum:
            - SYS_ADMIN
            - SYS_ADMIN_READ
            - ADMIN
            - PROJECT_MANAGER
            - LINGUIST
            - GUEST
            - SUBMITTER
            - PORTAL_MEMBER
            - BOT
        uid:
          type: string
        userName:
          type: string
    ProviderReferenceV1:
      type: object
      required:
        - type
      discriminator:
        propertyName: type
      properties:
        id:
          type: string
        type:
          type: string
        uid:
          type: string
          readOnly: true
    JobRemoteFileReferenceV1:
      type: object
      properties:
        encodedFileName:
          type: string
        encodedFolder:
          type: string
        humanReadableFileName:
          type: string
        humanReadableFolder:
          type: string
    ProjectWorkflowStepReferenceV1:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        order:
          type: integer
          format: int32
        workflowLevel:
          type: integer
          format: int32
    SortOrder:
      type: object
      properties:
        direction:
          type: string
          enum:
            - ASC
            - DESC
        property:
          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: {}

````