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

# Update an experience

> Updates an existing experience in the user's resume as specified in the resume id.
If a base is provided as the resume_id, the experience is updated in the base resume.



## OpenAPI

````yaml patch /resume/{resume_id}/experience/{id}/
openapi: 3.0.3
info:
  title: Letraz Backend Server
  version: 0.1.0
  description: >-
    This is the backend service repository of Letraz. Create tailored resumes
    for every job application effortlessly with Letraz. Our AI-powered tool
    helps you stand out by automatically optimizing your resume for ATS and
    recruiters, ensuring your skills and experience match the job's
    requirements.
servers:
  - url: https://api.letraz.app/api/v1
    description: Production Server
  - url: http://localhost:8000/api/v1
    description: Local Development Server
security: []
tags:
  - name: Core APIs
    description: Core APIs for Letraz Backend
  - name: Waitlist
    description: >-
      Mange waitlist, signups, retrieve waitlist and everything related to
      waitlist
  - name: User
    description: Get or update user details of currently logged in user
  - name: Job object
    description: >-
      Manage job objects, retrieve job objects and everything related to job
      objects
  - name: Resume object
    description: >-
      Manage resume objects, retrieve resume objects and everything related to
      resume objects
  - name: Education object
    description: >-
      Manage education objects, retrieve education objects and everything
      related to education objects
  - name: Experience object
    description: >-
      Manage experience objects, retrieve experience objects and everything
      related to experience objects
paths:
  /resume/{resume_id}/experience/{id}/:
    patch:
      tags:
        - Experience object
      summary: Update an experience
      description: >-
        Updates an existing experience in the user's resume as specified in the
        resume id.

        If a base is provided as the resume_id, the experience is updated in the
        base resume.
      operationId: resume_experience_partial_update
      parameters:
        - in: path
          name: id
          schema:
            type: string
          description: Experience ID of the experience you want to update
          required: true
        - in: path
          name: resume_id
          schema:
            type: string
          description: >-
            Resume ID of the resume the education belongs to. If you want to
            interact with the base educations, just put `base` in here
          required: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedExperienceUpsert'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedExperienceUpsert'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedExperienceUpsert'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExperienceFull'
          description: ''
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorEnvelope'
          description: ''
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorEnvelope'
          description: ''
      security:
        - basicAuth: []
        - cookieAuth: []
        - cookieAuth: []
components:
  schemas:
    PatchedExperienceUpsert:
      type: object
      properties:
        id:
          type: string
          readOnly: true
        company_name:
          type: string
          description: The name of the company the user worked at.
          maxLength: 250
        job_title:
          type: string
          description: The title of the job the user had.
          maxLength: 250
        employment_type:
          enum:
            - flt
            - prt
            - con
            - int
            - fre
            - sel
            - vol
            - tra
          type: string
          x-spec-enum-id: 35057d0cc661fae0
          description: >-
            The type of employment the user had. Can be Full Time, Part Time,
            Contract, Internship, Freelance, Self Employed, Volunteer or
            Trainee.


            * `flt` - Full Time

            * `prt` - Part Time

            * `con` - Contract

            * `int` - Internship

            * `fre` - Freelance

            * `sel` - Self Employed

            * `vol` - Volunteer

            * `tra` - Trainee
        city:
          type: string
          nullable: true
          description: The city the company is located in. (optional)
          maxLength: 50
        started_from_month:
          type: integer
          maximum: 12
          minimum: 1
          nullable: true
          description: Month when the experience started (1-12).
        started_from_year:
          type: integer
          maximum: 2100
          minimum: 1900
          nullable: true
          description: Year when the experience started (YYYY).
        finished_at_month:
          type: integer
          maximum: 12
          minimum: 1
          nullable: true
          description: Month when the experience was completed (1-12).
        finished_at_year:
          type: integer
          maximum: 2100
          minimum: 1900
          nullable: true
          description: Year when the experience was completed (YYYY).
        current:
          type: boolean
          description: 'Whether the user is currently working. default: False'
        description:
          type: string
          nullable: true
          description: >-
            The description of the experience entry. User can provide any kind
            of description for that user. Usually in HTML format to support rich
            text. (optional)
          maxLength: 3000
        created_at:
          type: string
          format: date-time
          readOnly: true
          description: The date and time the experience entry was created.
        updated_at:
          type: string
          format: date-time
          readOnly: true
          description: The date and time the experience entry was last updated.
        user:
          type: string
          description: The user who the experience entry belongs to.
        resume_section:
          type: string
          format: uuid
          description: The unique identifier for the resume section entry.
        country:
          type: string
          description: The country the company is located in. (optional)
          nullable: true
    ExperienceFull:
      type: object
      properties:
        id:
          type: string
          readOnly: true
        user:
          type: string
          description: The user who the experience entry belongs to.
        resume_section:
          type: string
          readOnly: true
        company_name:
          type: string
          description: The name of the company the user worked at.
          maxLength: 250
        job_title:
          type: string
          description: The title of the job the user had.
          maxLength: 250
        employment_type:
          type: string
          readOnly: true
        city:
          type: string
          nullable: true
          description: The city the company is located in. (optional)
          maxLength: 50
        country:
          type: string
          readOnly: true
        started_from_month:
          type: integer
          maximum: 12
          minimum: 1
          nullable: true
          description: Month when the experience started (1-12).
        started_from_year:
          type: integer
          maximum: 2100
          minimum: 1900
          nullable: true
          description: Year when the experience started (YYYY).
        finished_at_month:
          type: integer
          maximum: 12
          minimum: 1
          nullable: true
          description: Month when the experience was completed (1-12).
        finished_at_year:
          type: integer
          maximum: 2100
          minimum: 1900
          nullable: true
          description: Year when the experience was completed (YYYY).
        current:
          type: boolean
          description: 'Whether the user is currently working. default: False'
        description:
          type: string
          nullable: true
          description: >-
            The description of the experience entry. User can provide any kind
            of description for that user. Usually in HTML format to support rich
            text. (optional)
          maxLength: 3000
        created_at:
          type: string
          format: date-time
          readOnly: true
          description: The date and time the experience entry was created.
        updated_at:
          type: string
          format: date-time
          readOnly: true
          description: The date and time the experience entry was last updated.
      required:
        - company_name
        - country
        - created_at
        - employment_type
        - id
        - job_title
        - resume_section
        - updated_at
        - user
    ErrorEnvelope:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/Error'
      required:
        - error
    Error:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
          description: >-
            The unique identifier for the error response. This is useful for
            tracking the error in the logs and in Sentry if it is enabled.
        code:
          type: string
          description: >-
            The error code that is unique to the error type. This can be used to
            identify the error type and can be used for debugging.
        message:
          type: string
          description: >-
            The error message that is human readable and can be used to
            understand the error. Usually fit to be displayed to the user.
        details:
          type: string
          description: >-
            The error details that can be used to understand the error in more
            detail. This can be used for debugging purposes.
        extra:
          type: string
          description: >-
            The extra data that can be used to understand the error in more
            detail. This is usually not displayed to the user and might include
            stacktrace and sensitive information.
      required:
        - code
        - details
        - extra
        - message
        - uuid
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
    cookieAuth:
      type: apiKey
      in: cookie
      name: sessionid

````