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

# Edit job

> 
This API call facilitates job editing using a PUT method.

Unlike [Patch job](../job/patch-job), this call employs a PUT method, necessitating the inclusion of all
parameters in the request. Omitting any parameter will reset its value to the default. For instance, if only the status
field is included, the due date and provider fields will be emptied, even if they had previous values.

It's recommended to either use a call like [Get job](../job/get-job) or [List jobs](../job/list-jobs) to
gather the unchanged information or consider using the [Patch job](../job/patch-job) operation.

This call supports editing the status, due date, and providers. When modifying providers, it's crucial to submit both
the provider's ID and its type (either VENDOR or USER).

The response will offer a subset of information from [Get job](../job/get-job).




## OpenAPI

````yaml /openapi/phrase-tms-latest.json put /api2/v1/projects/{projectUid}/jobs/{jobUid}
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}/jobs/{jobUid}:
    put:
      tags:
        - Job
      summary: Edit job
      description: >

        This API call facilitates job editing using a PUT method.


        Unlike [Patch job](../job/patch-job), this call employs a PUT method,
        necessitating the inclusion of all

        parameters in the request. Omitting any parameter will reset its value
        to the default. For instance, if only the status

        field is included, the due date and provider fields will be emptied,
        even if they had previous values.


        It's recommended to either use a call like [Get job](../job/get-job) or
        [List jobs](../job/list-jobs) to

        gather the unchanged information or consider using the [Patch
        job](../job/patch-job) operation.


        This call supports editing the status, due date, and providers. When
        modifying providers, it's crucial to submit both

        the provider's ID and its type (either VENDOR or USER).


        The response will offer a subset of information from [Get
        job](../job/get-job).
      operationId: editPart
      parameters:
        - name: projectUid
          in: path
          required: true
          schema:
            type: string
        - name: jobUid
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/JobPartUpdateSingleDtoV1'
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobPartExtendedDtoV1'
        '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:
    JobPartUpdateSingleDtoV1:
      type: object
      required:
        - status
      properties:
        dateDue:
          type: string
          format: date-time
        providers:
          type: array
          items:
            $ref: '#/components/schemas/ProviderReferenceV1'
        status:
          type: string
          enum:
            - NEW
            - ACCEPTED
            - DECLINED
            - REJECTED
            - DELIVERED
            - EMAILED
            - COMPLETED
            - CANCELLED
    JobPartExtendedDtoV1:
      type: object
      properties:
        beginIndex:
          type: integer
          format: int32
        continuous:
          type: boolean
        continuousJobInfo:
          $ref: '#/components/schemas/ContinuousJobInfoDtoV1'
        dateCreated:
          type: string
          format: date-time
        dateDue:
          type: string
          format: date-time
        endIndex:
          type: integer
          format: int32
        filename:
          type: string
        importStatus:
          $ref: '#/components/schemas/ImportStatusDtoV1'
        imported:
          type: boolean
        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.
        isParentJobSplit:
          type: boolean
        jobReference:
          $ref: '#/components/schemas/JobReferenceV1'
        lastWorkflowLevel:
          type: integer
          format: int32
        originalFileDirectory:
          type: string
        project:
          $ref: '#/components/schemas/ProjectReferenceV1'
        providers:
          type: array
          items:
            $ref: '#/components/schemas/ProviderReferenceV1'
        serverTaskId:
          type: string
        sourceLang:
          type: string
        status:
          type: string
          enum:
            - NEW
            - ACCEPTED
            - DECLINED
            - REJECTED
            - DELIVERED
            - EMAILED
            - COMPLETED
            - CANCELLED
        targetLang:
          type: string
        uid:
          type: string
        updateSourceDate:
          type: string
          format: date-time
        updateTargetDate:
          type: string
          format: date-time
        wordsCount:
          type: integer
          format: int32
        workUnit:
          $ref: '#/components/schemas/ObjectReference'
        workflowLevel:
          type: integer
          format: int32
        workflowStep:
          $ref: '#/components/schemas/ProjectWorkflowStepReferenceV1'
    ProviderReferenceV1:
      type: object
      required:
        - type
      discriminator:
        propertyName: type
      properties:
        id:
          type: string
        type:
          type: string
        uid:
          type: string
          readOnly: true
    ContinuousJobInfoDtoV1:
      type: object
      properties:
        dateUpdated:
          type: string
          format: date-time
    ImportStatusDtoV1:
      type: object
      properties:
        errorMessage:
          type: string
        status:
          type: string
          enum:
            - RUNNING
            - ERROR
            - OK
    JobReferenceV1:
      type: object
      properties:
        filename:
          type: string
        uid:
          type: string
    ProjectReferenceV1:
      type: object
      properties:
        name:
          type: string
        uid:
          type: string
    ObjectReference:
      type: object
    ProjectWorkflowStepReferenceV1:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        order:
          type: integer
          format: int32
        workflowLevel:
          type: integer
          format: int32
  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: {}

````