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

# Retrieve a variable item

> Retrieve a single variable item by id.



## OpenAPI

````yaml /openapi-specs/pagga-remuneration.yaml get /remuneration/api/variable-items/{id}
openapi: 3.1.0
info:
  title: Lucca-Compensation
  version: '1.0'
  description: >-
    Welcome on the documentation for the Lucca Compensation API.


    Lucca Compensation is an online compensation management service that offers
    a complete picture of compensation structure (basic salary, variable
    compensation item, ...). 
  contact:
    name: API Support
    url: https://support.lucca.fr
    email: contact@luccasoftware.com
  license:
    name: Unlicensed
    url: https://www.luccasoftware.com
servers:
  - url: https://{host}
    description: Your Lucca account URL.
    variables:
      host:
        default: example.ilucca.net
        description: >-
          The URL of your dedicated Lucca account: `{account}.{env}.{region}`.


          Account reflects your company name. Env indicates the environment.
          Region depends on your server location.


          **Please, use your test or sandbox environments (and not your
          production env.) for testing purposes.**


          Environments:

          - `ilucca`: production environment for customers.

          - `ilucca-test`: test environment for customers.

          - `ilucca-demo`: demo environment for prospects.


          Regions:

          - `.ch` for Swiss located accounts.

          - `.net` for the others.


          Regarding sandboxes, the pattern differs:
          `https://{account}-{sandboxName}.sandbox.{server}.luccasoftware.com`,
          where:

          - `{sandboxName}` is automatically generated upon creation.

          - `{server}` may be "eu1", "eu2" or "ch1".
security: []
tags:
  - name: fixed-nature
    description: Represents a type of remuneration that is fixed, i.e. does not vary.
  - name: fixed-nature-category
    description: Represents a category of fixed-nature.
  - name: variable-nature
    description: Represents a type of remuneration that varies.
  - name: variable-nature-category
    description: Represents a category of variable-natures.
  - name: RemunerationNatures
    description: Types of remuneration.
  - name: variable-item
    description: Represents a remuneration item of type "variable-nature".
  - name: fixed-item
    description: Represents a remuneration item of type "fixed-nature".
paths:
  /remuneration/api/variable-items/{id}:
    parameters:
      - $ref: '#/components/parameters/Authorization'
      - name: id
        in: path
        description: Unique id of the variable item.
        required: true
        schema:
          type: integer
          format: int32
    get:
      tags:
        - variable-item
      summary: Retrieve a variable item
      description: Retrieve a single variable item by id.
      operationId: GetVariableItemById
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VariableItem'
        '404':
          description: Not Found
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
components:
  parameters:
    Authorization:
      name: Authorization
      required: true
      description: 'API key. Value must be formatted like so: `lucca application={api_key}`.'
      in: header
      schema:
        type: string
  schemas:
    VariableItem:
      type: object
      properties:
        amount:
          type: number
          description: "The amount of the variable remuneration item.\r\nDepending on the nature of the variable item, the amount can be either a quantity or a monetary value."
          format: double
        natureId:
          type: integer
          description: The nature id of the variable remuneration item
          format: int32
        workContractId:
          type: integer
          description: "A variable item must be linked to a work contract, or eventually the amendment of a work contract.\r\nThis is the id of the work contract."
          format: int32
        amendmentId:
          type: integer
          default: 0
          description: >-
            A variable item must be linked to a work contract, and optionally
            one of its amendments.\rAmendmentId "0" (zero) is to be interpreted
            as "null", i.e. no amendment. In this case, the variable-item is
            attached to the work-contract original version (unedited by any
            amendment).
          format: int32
        comments:
          description: You can attach a comment to explain or justify the variable
          type:
            - string
            - 'null'
          maxLength: 140
          example: For outstanding performance this quarter
        period:
          type: string
          description: >-
            A variable remuneration item is ponctual, and is linked to a
            specific period
          format: date
        id:
          type: integer
          description: Unique identifier of the variable remuneration item
          format: int32
        nature:
          $ref: '#/components/schemas/VariableNature'
          description: The nature of the variable remuneration item
        workContract:
          $ref: '#/components/schemas/AmendedWorkContract'
          description: The work contract linked to the variable item.
        isDeleted:
          type: boolean
          description: Has the variable item been deleted?
      additionalProperties: false
    ProblemDetails:
      type: object
      properties:
        type:
          type:
            - string
            - 'null'
        title:
          type:
            - string
            - 'null'
        status:
          type:
            - integer
            - 'null'
          format: int32
        detail:
          type:
            - string
            - 'null'
        instance:
          type:
            - string
            - 'null'
      additionalProperties: {}
    VariableNature:
      type: object
      properties:
        id:
          type: integer
          description: An unique identifier for the variable nature
          format: int32
        name:
          maxLength: 50
          minLength: 1
          type: string
          description: The display name
          example: Annual bonus
        type:
          allOf:
            - $ref: '#/components/schemas/RemunerationNatureType'
            - description: >-
                Is the nature of the remuneration an amount of money or a
                quantity?
              x-enumNames:
                - Amount
                - Number
        category:
          anyOf:
            - $ref: '#/components/schemas/VariableNatureCategory'
              description: The category of the variable nature
            - type: 'null'
        establishments:
          description: Establishments linked to the variable nature
          type: array
          items:
            $ref: '#/components/schemas/Establishment'
      additionalProperties: false
    AmendedWorkContract:
      type: object
      properties:
        workContractId:
          type: integer
          description: "An amended work contract is defined both by the work contract and the amendment\r\nThis is the identifier of the work contract part"
          format: int32
        amendmentId:
          type: integer
          description: "An amended work contract is defined both by the work contract and the amendment\r\nThis is the identifier of the amendment part"
          format: int32
        ownerId:
          type: integer
          description: The identifier of the employee who owns the contract
          format: int32
        owner:
          $ref: '#/components/schemas/AmendedWorkContractOwner'
          description: The employee who owns the work contract
        startsOn:
          type: string
          description: Start date of the contract
          format: date
        endsOn:
          type:
            - string
            - 'null'
          description: End date of the contract
          format: date
      additionalProperties: false
    RemunerationNatureType:
      enum:
        - Amount
        - Number
      type: string
      description: Is the nature of the remuneration an amount of money or a quantity?
      x-enumNames:
        - Amount
        - Number
    VariableNatureCategory:
      type: object
      properties:
        id:
          type: integer
          description: An unique identifier for the variable nature category
          format: int32
        code:
          type: string
          description: An internal unique code identifying the category
          example: BONUS
      additionalProperties: false
      description: Variable nature category
    Establishment:
      type: object
      properties:
        id:
          type: integer
          description: An unique identifier for the establishment
          format: int32
        name:
          type: string
          description: The display name
          example: Lucca FR
        currencyCode:
          type: string
          description: Currency code used in this establishment
          example: EUR
        currencySymbol:
          type: string
          description: Currency symbol used in this establishment
          example: €
      additionalProperties: false
    AmendedWorkContractOwner:
      required:
        - department
        - displayName
        - firstName
        - id
        - lastName
        - login
        - name
      type: object
      properties:
        id:
          type: integer
          description: Unique identifier of the user
          format: int32
        firstName:
          type: string
          description: First name of the user
        lastName:
          type: string
          description: Last name of the user
        name:
          type: string
          description: Full name of the user
        displayName:
          type: string
          description: Display name of the user

````