{
  "components": {
    "schemas": {
      "OutputTAndAApiBreakType260f49988846": {
        "properties": {
          "created_at": {
            "type": "string"
          },
          "description": {
            "description": "Description of the break type.",
            "type": "string"
          },
          "id": {
            "description": "The ID of the break type.",
            "type": "string"
          },
          "is_over_time_eligible": {
            "description": "Whether the break counts towards hours worked.",
            "type": "boolean"
          },
          "is_paid": {
            "description": "Whether the break is paid.",
            "type": "boolean"
          },
          "updated_at": {
            "type": "string"
          }
        },
        "title": "BreakType",
        "type": "object"
      },
      "OutputTAndAApiDimension65f62f9ebc1c": {
        "description": "A dimension object can be created to track time worked under various different buckets. Examples of dimensions include 'Location' or 'Project', and each dimension typically has one or more specific job codes underneath it.",
        "properties": {
          "group": {
            "description": "The id of the group that applies to the dimension, if one exists.",
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "description": "The id of the dimension.",
            "type": "string"
          },
          "name": {
            "description": "The name of the dimension.",
            "type": "string"
          },
          "spoke_identifier": {
            "description": "The unique identifier of the dimension in an outside system.",
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name"
        ],
        "title": "Dimension",
        "type": "object"
      },
      "OutputTAndAApiJobCode07aabe6cc1e2": {
        "description": "A job code object is a specific instance of an option underneath a dimension that time can be tracked against. If the configured dimension were to be 'Location', for example, job code options underneath that dimension might include 'San Francisco', 'New York', 'Bangalore', etc.",
        "properties": {
          "dimension": {
            "description": "The id of the associated dimension.",
            "type": "string"
          },
          "group": {
            "description": "The id of the group that applies to the job code, if one exists.",
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "description": "The id of the job code.",
            "type": "string"
          },
          "spoke_identifier": {
            "description": "The unique identifier of the job code in an outside system.",
            "type": [
              "string",
              "null"
            ]
          },
          "value": {
            "description": "The name of the job code.",
            "type": "string"
          }
        },
        "required": [
          "dimension",
          "id",
          "value"
        ],
        "title": "JobCode",
        "type": "object"
      },
      "OutputTAndAApiPayPeriodee63bf1ced15": {
        "description": "A pay period object.",
        "properties": {
          "endDate": {
            "type": "string"
          },
          "paySchedule": {
            "type": [
              "string",
              "null"
            ]
          },
          "startDate": {
            "type": "string"
          }
        },
        "title": "PayPeriod",
        "type": "object"
      },
      "OutputTAndAApiPieceRatePremiumdab5b415484e": {
        "description": "An additional amount that employees can get per unit worked. For example, an additonal amount per item, per customer, per class, etc.",
        "properties": {
          "premium_rate": {
            "anyOf": [
              {
                "description": "The pay rate for this piece rate premium.",
                "type": "number"
              },
              {
                "pattern": "^-?[0-9]+(?:\\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$",
                "type": "string"
              }
            ]
          },
          "premium_units": {
            "anyOf": [
              {
                "description": "The total units produced at the premium rate.",
                "type": "number"
              },
              {
                "pattern": "^-?[0-9]+(?:\\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$",
                "type": "string"
              }
            ]
          }
        },
        "title": "PieceRatePremium",
        "type": "object"
      },
      "OutputTAndAApiPremiumca003a178b46": {
        "description": "An additional amount of money that employees can get per hour worked.",
        "properties": {
          "premium_hours": {
            "anyOf": [
              {
                "description": "The total hours worked for at the premium rate.",
                "type": "number"
              },
              {
                "pattern": "^-?[0-9]+(?:\\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$",
                "type": "string"
              }
            ]
          },
          "premium_rate": {
            "anyOf": [
              {
                "description": "The pay rate for this premium.",
                "type": "number"
              },
              {
                "pattern": "^-?[0-9]+(?:\\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$",
                "type": "string"
              }
            ]
          }
        },
        "title": "Premium",
        "type": "object"
      },
      "OutputTAndAApiSegment725ffe6416c4": {
        "description": "A piece of continuous time within the time entry that is associated with some type of work or break. This  is the pay rate that is used to sync to Payroll and pay employees.",
        "properties": {
          "break_type": {
            "items": {
              "$ref": "#/components/schemas/OutputTAndAApiBreakType260f49988846"
            },
            "type": "array"
          },
          "display_name": {
            "description": "Name of the final earning for the segment.",
            "type": "string"
          },
          "end_time": {
            "description": "The end time of the segment.",
            "type": "string"
          },
          "job_codes": {
            "description": "The job codes associated with the segment.",
            "items": {
              "$ref": "#/components/schemas/OutputTAndAApiJobCode07aabe6cc1e2"
            },
            "type": "array"
          },
          "ot_multiplier": {
            "anyOf": [
              {
                "description": "The multiplier for overtime hours in this segment.",
                "type": "number"
              },
              {
                "pattern": "^-?[0-9]+(?:\\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$",
                "type": "string"
              }
            ]
          },
          "pay_rate": {
            "anyOf": [
              {
                "description": "The pay rate for this segment.",
                "type": "number"
              },
              {
                "pattern": "^-?[0-9]+(?:\\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$",
                "type": "string"
              }
            ]
          },
          "start_time": {
            "description": "The start time of the segment.",
            "type": "string"
          }
        },
        "title": "Segment",
        "type": "object"
      },
      "OutputTAndAApiTimeEntry25c46c0233db": {
        "description": "A time entry object corresponds to a singular continuous instance of work from clock in to clock out.",
        "properties": {
          "breaks": {
            "items": {
              "$ref": "#/components/schemas/OutputTAndAApiTimeEntryBreakc7b0e2c03157"
            },
            "type": "array"
          },
          "comments": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "duration": {
            "description": "Total length of the time entry, in hours.",
            "type": "string"
          },
          "endTime": {
            "description": "The end time of the time entry, in UTC. Will be null if the time entry\n has not yet completed.",
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "type": "string"
          },
          "idempotencyKey": {
            "type": [
              "string",
              "null"
            ]
          },
          "jobShifts": {
            "items": {
              "$ref": "#/components/schemas/OutputTAndAApiTimeEntryJobShift07e83142e4b9"
            },
            "type": "array"
          },
          "overtimeHours": {
            "description": "Total overtime hours in the time entry.",
            "type": "string"
          },
          "pieceRatePremiums": {
            "items": {
              "$ref": "#/components/schemas/OutputTAndAApiPieceRatePremiumdab5b415484e"
            },
            "type": "array"
          },
          "premiums": {
            "items": {
              "$ref": "#/components/schemas/OutputTAndAApiPremiumca003a178b46"
            },
            "type": "array"
          },
          "regularHours": {
            "description": "Total regular hours (base pay) in the time entry.",
            "type": "string"
          },
          "role": {
            "type": "string"
          },
          "segments": {
            "items": {
              "$ref": "#/components/schemas/OutputTAndAApiSegment725ffe6416c4"
            },
            "type": "array"
          },
          "shouldCreateExtraHoursRun": {
            "description": "Should this time entry be considered for extra hours run",
            "type": [
              "boolean",
              "null"
            ]
          },
          "startTime": {
            "description": "The start time of the time entry, in UTC.",
            "type": "string"
          },
          "status": {
            "description": "The status of the time entry",
            "type": [
              "string",
              "null"
            ]
          },
          "tags": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "timezone": {
            "description": "The timezone the time entry was logged in. Can be used in conjunction with startTime and endTime to derive the localized start/end times of the time entry.",
            "type": "string"
          }
        },
        "title": "TimeEntry",
        "type": "object"
      },
      "OutputTAndAApiTimeEntryBreakc7b0e2c03157": {
        "description": "A specific instance of a break taken within a time entry.",
        "properties": {
          "description": {
            "type": "string"
          },
          "endTime": {
            "description": "The end time of the break, in UTC. Will be null if the break has not yet completed.",
            "type": [
              "string",
              "null"
            ]
          },
          "isOTEligible": {
            "description": "Whether or not the break counts towards hours worked.",
            "type": "string"
          },
          "isPaid": {
            "type": "string"
          },
          "startTime": {
            "description": "The start time of the break, in UTC.",
            "type": "string"
          }
        },
        "title": "TimeEntryBreak",
        "type": "object"
      },
      "OutputTAndAApiTimeEntryJobShift07e83142e4b9": {
        "description": "A specific instance of a job shift within a time entry. The instance includes the start time of the shift, end time of the shift, any a map from dimension_id to job_code_id for all job codes selected for this particular shift. Any time the job codes switch, a new instance of TimeEntryJobShift is created.",
        "properties": {
          "endTime": {
            "description": "The end time of the shift, in UTC. Will be null if the shift has not yet completed.",
            "type": [
              "string",
              "null"
            ]
          },
          "jobCodes": {
            "description": "A list of job code ids worked during the shift. If empty, no job codes were worked during the shift.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "startTime": {
            "description": "The start time of the shift, in UTC.",
            "type": "string"
          }
        },
        "title": "TimeEntryJobShift",
        "type": "object"
      },
      "OutputTAndAApiTimecardSummaryf977e13be8ff": {
        "description": "A timecard summary object is a breakdown of all hours that match a specific timecard. The object breaks down all earned hours by earning id, all premium hours by earning id, all hours by job codes, amongst others.",
        "properties": {
          "": {
            "type": "string"
          },
          "approved_hours": {
            "description": "Total approved hours in the timecard.",
            "type": "string"
          },
          "earnings": {
            "description": "A breakdown of total worked hours by earning type id in the timecard.",
            "properties": {
              "[earning_id]": {
                "type": "string"
              }
            },
            "type": "object"
          },
          "job_codes": {
            "description": "A breakdown of total worked hours by job codes in the timecard.",
            "items": {
              "properties": {
                "codes": {
                  "items": {
                    "type": "string"
                  },
                  "type": "array"
                },
                "hours": {
                  "type": "string"
                }
              },
              "type": "object"
            },
            "type": "array"
          },
          "overtime_hours": {
            "description": "Total overtime hours in the timecard.",
            "type": "string"
          },
          "paid_hours": {
            "description": "Total paid hours in the timecard.",
            "type": "string"
          },
          "premiums": {
            "description": "A breakdown of total premium hours by earning type id in the timecard.",
            "properties": {
              "[earning_id]": {
                "type": "string"
              }
            },
            "type": "object"
          },
          "regular_hours": {
            "description": "Total regular hours (base pay) in the timecard.",
            "type": "string"
          },
          "total_holiday_hours": {
            "description": "Total paid holiday hours in the timecard.",
            "type": "string"
          },
          "total_hours": {
            "description": "Total worked hours in the timecard.",
            "type": "string"
          },
          "total_paid_time_off_hours": {
            "description": "Total paid time off hours in the timecard.",
            "type": "string"
          },
          "total_unpaid_time_off_hours": {
            "description": "Total unpaid time off hours in the timecard.",
            "type": "string"
          }
        },
        "title": "TimecardSummary",
        "type": "object"
      },
      "OutputTAndAApiTimecardc5cb923dc4e2": {
        "description": "A timecard object is an instance that tracks a role's time logged in T&A across an entire pay period. The object specifically references a TimecardSummary instance, which takes down all of the hours logged for the role in the pay period in T&A and breaks them down.",
        "properties": {
          "id": {
            "description": "Unique identifier for timecard ",
            "type": "string"
          },
          "payPeriod": {
            "$ref": "#/components/schemas/OutputTAndAApiPayPeriodee63bf1ced15"
          },
          "role": {
            "description": "Rippling identifier for target user",
            "type": "string"
          },
          "timecardSummary": {
            "$ref": "#/components/schemas/OutputTAndAApiTimecardSummaryf977e13be8ff"
          }
        },
        "title": "Timecard",
        "type": "object"
      },
      "TAndAApiTimeEntryJobShift07e83142e4b9": {
        "description": "A specific instance of a job shift within a time entry. The instance includes the start time of the shift, end time of the shift, any a map from dimension_id to job_code_id for all job codes selected for this particular shift. Any time the job codes switch, a new instance of TimeEntryJobShift is created.",
        "properties": {
          "endTime": {
            "description": "The end time of the shift, in UTC. Will be null if the shift has not yet completed.",
            "type": [
              "string",
              "null"
            ]
          },
          "jobCodes": {
            "description": "A list of job code ids worked during the shift. If empty, no job codes were worked during the shift.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "startTime": {
            "description": "The start time of the shift, in UTC.",
            "type": "string"
          }
        },
        "title": "TimeEntryJobShift",
        "type": "object"
      }
    }
  },
  "info": {
    "title": "Rippling t-and-a-api",
    "version": "2026-10-28"
  },
  "openapi": "3.1.0",
  "paths": {
    "/platform/api/dimensions": {
      "get": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/get-dimensions"
        },
        "operationId": "rippling.t_and_a_api.get_dimensions",
        "parameters": [],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/OutputTAndAApiDimension65f62f9ebc1c"
                  },
                  "type": "array"
                }
              }
            },
            "description": "OK"
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "GET Dimensions for Company",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      },
      "post": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/post-dimensions"
        },
        "operationId": "rippling.t_and_a_api.post_dimensions",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "description": "The name of the dimension.",
                    "type": "string"
                  },
                  "spoke_identifier": {
                    "description": "The external identifier of the dimension.",
                    "type": "string"
                  }
                },
                "required": [
                  "name"
                ],
                "type": "object"
              }
            }
          },
          "required": false
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutputTAndAApiDimension65f62f9ebc1c"
                }
              }
            },
            "description": "Reponse body\n\nThe created dimension."
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "POST Dimension",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      }
    },
    "/platform/api/dimensions/{dimension_id}": {
      "delete": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/delete-dimensions-dimension-id"
        },
        "operationId": "rippling.t_and_a_api.delete_dimensions_dimension_id",
        "parameters": [
          {
            "in": "path",
            "name": "dimension_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutputTAndAApiDimension65f62f9ebc1c"
                }
              }
            },
            "description": "The deleted dimension."
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "DELETE Dimension",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      },
      "get": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/get-dimensions-dimension-id"
        },
        "operationId": "rippling.t_and_a_api.get_dimensions_dimension_id",
        "parameters": [
          {
            "in": "path",
            "name": "dimension_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutputTAndAApiDimension65f62f9ebc1c"
                }
              }
            },
            "description": "OK"
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "GET Dimension",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      },
      "patch": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/patch-dimensions-dimension-id"
        },
        "operationId": "rippling.t_and_a_api.patch_dimensions_dimension_id",
        "parameters": [
          {
            "in": "path",
            "name": "dimension_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "description": "The new name of the dimension.",
                    "type": "string"
                  },
                  "spoke_identifier": {
                    "description": "The new external identifier of the dimension.",
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          },
          "required": false
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutputTAndAApiDimension65f62f9ebc1c"
                }
              }
            },
            "description": "The updated dimension."
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "PATCH Dimension",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      }
    },
    "/platform/api/job_codes": {
      "post": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/post-job-codes"
        },
        "operationId": "rippling.t_and_a_api.post_job_codes",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "dimension": {
                    "description": "The id of the dimension that the job code should be associated with.",
                    "type": "string"
                  },
                  "spoke_identifier": {
                    "description": "The external identifier of the job code in an outside system.",
                    "type": "string"
                  },
                  "value": {
                    "description": "The name of the job code.",
                    "type": "string"
                  }
                },
                "required": [
                  "dimension",
                  "value"
                ],
                "type": "object"
              }
            }
          },
          "required": false
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutputTAndAApiJobCode07aabe6cc1e2"
                }
              }
            },
            "description": "The created job code."
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "POST Job code",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      }
    },
    "/platform/api/job_codes/for_dimension": {
      "get": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/get-job-codes-for-dimension"
        },
        "operationId": "rippling.t_and_a_api.get_job_codes_for_dimension",
        "parameters": [
          {
            "in": "query",
            "name": "dimension",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/OutputTAndAApiJobCode07aabe6cc1e2"
                  },
                  "type": "array"
                }
              }
            },
            "description": "OK"
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "GET Job Codes for a Dimension",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      }
    },
    "/platform/api/job_codes/{job_code_id}": {
      "delete": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/delete"
        },
        "operationId": "rippling.t_and_a_api.delete",
        "parameters": [
          {
            "in": "path",
            "name": "job_code_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutputTAndAApiJobCode07aabe6cc1e2"
                }
              }
            },
            "description": "The job code that was deleted."
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "DELETE Job Code",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      },
      "get": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/get-job-codes-job-code-id"
        },
        "operationId": "rippling.t_and_a_api.get_job_codes_job_code_id",
        "parameters": [
          {
            "in": "path",
            "name": "job_code_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutputTAndAApiJobCode07aabe6cc1e2"
                }
              }
            },
            "description": "OK"
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "GET Job Code",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      },
      "patch": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/patch-job-codes-job-code-id"
        },
        "operationId": "rippling.t_and_a_api.patch_job_codes_job_code_id",
        "parameters": [
          {
            "in": "path",
            "name": "job_code_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "dimension": {
                    "description": "The id of the dimension you'd like to update the job code to.\n",
                    "type": "string"
                  },
                  "spoke_identifier": {
                    "description": "The new external identifier you'd like to update the job code to.",
                    "type": "string"
                  },
                  "value": {
                    "description": "The new name you'd like to update the job code to.",
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          },
          "required": false
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutputTAndAApiJobCode07aabe6cc1e2"
                }
              }
            },
            "description": "The updated job code."
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "PATCH Job Code",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      }
    },
    "/platform/api/time_entries": {
      "post": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/post-platform-api-time-entries"
        },
        "operationId": "rippling.t_and_a_api.post_platform_api_time_entries",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "anyOf": [
                  {
                    "properties": {
                      "breaks": {
                        "items": {
                          "properties": {
                            "companyBreakType": {
                              "type": "string"
                            },
                            "endTime": {
                              "type": "string"
                            },
                            "startTime": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "companyBreakType",
                            "endTime",
                            "startTime"
                          ],
                          "type": "object"
                        },
                        "type": "array"
                      },
                      "comments": {
                        "items": {
                          "type": "string"
                        },
                        "type": "array"
                      },
                      "company": {
                        "type": "string"
                      },
                      "endTime": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "idempotencyKey": {
                        "description": "External identifier for the TimeEntry. Rippling will ensure that this is unique on the backend.",
                        "type": "string"
                      },
                      "jobShifts": {
                        "items": {
                          "properties": {
                            "endTime": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "jobCodes": {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            "startTime": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "endTime",
                            "startTime"
                          ],
                          "type": "object"
                        },
                        "type": "array"
                      },
                      "role": {
                        "type": "string"
                      },
                      "startTime": {
                        "type": "string"
                      },
                      "status": {
                        "default": "DRAFT",
                        "description": "Allowed value: [DRAFT/APPROVED/PAID]",
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "required": [
                      "breaks",
                      "company",
                      "jobShifts",
                      "role"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "breaks": {
                        "items": {
                          "properties": {
                            "companyBreakType": {
                              "type": "string"
                            },
                            "endTime": {
                              "type": "string"
                            },
                            "startTime": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "companyBreakType",
                            "endTime",
                            "startTime"
                          ],
                          "type": "object"
                        },
                        "type": "array"
                      },
                      "comments": {
                        "items": {
                          "type": "string"
                        },
                        "type": "array"
                      },
                      "company": {
                        "type": "string"
                      },
                      "endTime": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "idempotencyKey": {
                        "description": "External identifier for the TimeEntry. Rippling will ensure that this is unique on the backend.",
                        "type": "string"
                      },
                      "jobShifts": {
                        "items": {
                          "properties": {
                            "endTime": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "jobCodes": {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            "startTime": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "endTime",
                            "startTime"
                          ],
                          "type": "object"
                        },
                        "type": "array"
                      },
                      "role": {
                        "type": "string"
                      },
                      "startTime": {
                        "type": "string"
                      },
                      "status": {
                        "default": "DRAFT",
                        "description": "Allowed value: [DRAFT/APPROVED/PAID]",
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "required": [
                      "company",
                      "endTime",
                      "role",
                      "startTime"
                    ],
                    "type": "object"
                  }
                ]
              }
            }
          },
          "required": false
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutputTAndAApiTimeEntry25c46c0233db"
                }
              }
            },
            "description": "OK"
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "POST Time Entry",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      }
    },
    "/platform/api/time_entries/bulk_create": {
      "post": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/post-time-entries-bulk-create"
        },
        "operationId": "rippling.t_and_a_api.post_time_entries_bulk_create",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "items": {
                  "properties": {
                    "breaks": {
                      "items": {
                        "properties": {
                          "companyBreakType": {
                            "description": "The companyBreakType associated with the break",
                            "type": "string"
                          },
                          "endTime": {
                            "description": "The end time of the time entry",
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "startTime": {
                            "description": "The start time of the time entry",
                            "type": "string"
                          }
                        },
                        "type": "object"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "comments": {
                      "description": "A list of comment strings to associate with the time entry",
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "company": {
                      "type": "string"
                    },
                    "endTime": {
                      "description": "If you specify job shifts explicitly, this value will be overriden",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "idempotencyKey": {
                      "description": "External identifier for the TimeEntry. Rippling will ensure that this is unique on the backend.",
                      "type": "string"
                    },
                    "jobShifts": {
                      "items": {
                        "$ref": "#/components/schemas/TAndAApiTimeEntryJobShift07e83142e4b9"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "role": {
                      "description": "The role ID for the employee associated with the time entry",
                      "type": "string"
                    },
                    "shouldCreateExtraHoursRun": {
                      "description": "Should this entry be considered for extra hours run",
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "startTime": {
                      "description": "If you specify job shifts explicitly, this value will be overriden",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "status": {
                      "description": "Allowed value: [DRAFT/APPROVED/PAID]",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "tags": {
                      "description": "A list of tags to associate with the time entry",
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    }
                  },
                  "type": "object"
                },
                "type": "array"
              }
            }
          },
          "required": false
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/OutputTAndAApiTimeEntry25c46c0233db"
                  },
                  "type": "array"
                }
              }
            },
            "description": "OK"
          },
          "500": {
            "description": "Internal Server Error",
            "x-rippling-source-response": {
              "content": {
                "application/json": {
                  "schema": {
                    "properties": {
                      "failedEntries": {
                        "description": "The failed to create time entries",
                        "items": {
                          "properties": {
                            "entryData": {
                              "description": "The data passed in to create the time entry",
                              "type": "object",
                              "x-stoplight": {
                                "id": "4qt5i7qe61fh5"
                              }
                            },
                            "error": {
                              "description": "The error returned while creating the time entry",
                              "type": "string",
                              "x-stoplight": {
                                "id": "4pvoj3octn37z"
                              }
                            }
                          },
                          "type": "object",
                          "x-stoplight": {
                            "id": "h9rpimsxn0l14"
                          }
                        },
                        "type": "array",
                        "x-stoplight": {
                          "id": "xgah7yruawsez"
                        }
                      },
                      "successfulEntries": {
                        "description": "The entries that were created successfully",
                        "items": {
                          "description": "A time entry object corresponds to a singular continuous instance of work from clock in to clock out.",
                          "examples": [
                            {
                              "breaks": [
                                {
                                  "description": "string",
                                  "endTime": "string",
                                  "isOTEligible": "string",
                                  "isPaid": "string",
                                  "startTime": "string"
                                }
                              ],
                              "endTime": "string",
                              "id": "string",
                              "jobShifts": [
                                {
                                  "endTime": "string",
                                  "jobCodes": [
                                    "string"
                                  ],
                                  "startTime": "string"
                                }
                              ],
                              "role": "string",
                              "startTime": "string"
                            }
                          ],
                          "properties": {
                            "breaks": {
                              "items": {
                                "description": "A specific instance of a break taken within a time entry.",
                                "examples": [
                                  {
                                    "description": "string",
                                    "endTime": "string",
                                    "isOTEligible": "string",
                                    "isPaid": "string",
                                    "startTime": "string"
                                  }
                                ],
                                "properties": {
                                  "description": {
                                    "type": "string"
                                  },
                                  "endTime": {
                                    "description": "The end time of the break, in UTC. Will be null if the break has not yet completed.",
                                    "type": [
                                      "string",
                                      "null"
                                    ]
                                  },
                                  "isOTEligible": {
                                    "description": "Whether or not the break counts towards hours worked.",
                                    "type": "string"
                                  },
                                  "isPaid": {
                                    "type": "string"
                                  },
                                  "startTime": {
                                    "description": "The start time of the break, in UTC.",
                                    "type": "string"
                                  }
                                },
                                "title": "TimeEntryBreak",
                                "type": "object"
                              },
                              "type": "array"
                            },
                            "comments": {
                              "items": {
                                "type": "string",
                                "x-stoplight": {
                                  "id": "fx8d26ytceips"
                                }
                              },
                              "type": "array",
                              "x-stoplight": {
                                "id": "gjzdfao78k5ju"
                              }
                            },
                            "duration": {
                              "description": "Total length of the time entry, in hours.",
                              "type": "string"
                            },
                            "endTime": {
                              "description": "The end time of the time entry, in UTC. Will be null if the time entry\n has not yet completed.",
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "id": {
                              "type": "string"
                            },
                            "idempotencyKey": {
                              "type": [
                                "string",
                                "null"
                              ],
                              "x-stoplight": {
                                "id": "9j9ihpeo5kkfh"
                              }
                            },
                            "jobShifts": {
                              "items": {
                                "description": "A specific instance of a job shift within a time entry. The instance includes the start time of the shift, end time of the shift, any a map from dimension_id to job_code_id for all job codes selected for this particular shift. Any time the job codes switch, a new instance of TimeEntryJobShift is created.",
                                "examples": [
                                  {
                                    "endTime": "string",
                                    "jobCodes": [
                                      "string"
                                    ],
                                    "startTime": "string"
                                  }
                                ],
                                "properties": {
                                  "endTime": {
                                    "description": "The end time of the shift, in UTC. Will be null if the shift has not yet completed.",
                                    "type": [
                                      "string",
                                      "null"
                                    ]
                                  },
                                  "jobCodes": {
                                    "description": "A list of job code ids worked during the shift. If empty, no job codes were worked during the shift.",
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": "array"
                                  },
                                  "startTime": {
                                    "description": "The start time of the shift, in UTC.",
                                    "type": "string"
                                  }
                                },
                                "title": "TimeEntryJobShift",
                                "type": "object"
                              },
                              "type": "array"
                            },
                            "overtimeHours": {
                              "description": "Total overtime hours in the time entry.",
                              "type": "string"
                            },
                            "pieceRatePremiums": {
                              "items": {
                                "description": "An additional amount that employees can get per unit worked. For example, an additonal amount per item, per customer, per class, etc.",
                                "properties": {
                                  "premium_rate": {
                                    "description": "The pay rate for this piece rate premium.",
                                    "type": "number",
                                    "x-stoplight": {
                                      "id": "bt90eqpk9acuk"
                                    }
                                  },
                                  "premium_units": {
                                    "description": "The total units produced at the premium rate.",
                                    "type": "number",
                                    "x-stoplight": {
                                      "id": "3do8a197adnmv"
                                    }
                                  }
                                },
                                "title": "PieceRatePremium",
                                "type": "object",
                                "x-stoplight": {
                                  "id": "4zeql5lfg6sgt"
                                }
                              },
                              "type": "array",
                              "x-stoplight": {
                                "id": "794gy9b0awlh8"
                              }
                            },
                            "premiums": {
                              "items": {
                                "description": "An additional amount of money that employees can get per hour worked.",
                                "properties": {
                                  "premium_hours": {
                                    "description": "The total hours worked for at the premium rate.",
                                    "type": "number"
                                  },
                                  "premium_rate": {
                                    "description": "The pay rate for this premium.",
                                    "type": "number"
                                  }
                                },
                                "title": "Premium",
                                "type": "object",
                                "x-stoplight": {
                                  "id": "4jn5turg4z3b0"
                                }
                              },
                              "type": "array",
                              "x-stoplight": {
                                "id": "aias3w8kfutxe"
                              }
                            },
                            "regularHours": {
                              "description": "Total regular hours (base pay) in the time entry.",
                              "type": "string"
                            },
                            "role": {
                              "type": "string"
                            },
                            "segments": {
                              "items": {
                                "description": "A piece of continuous time within the time entry that is associated with some type of work or break. This  is the pay rate that is used to sync to Payroll and pay employees.",
                                "properties": {
                                  "break_type": {
                                    "items": {
                                      "properties": {
                                        "created_at": {
                                          "type": "string",
                                          "x-stoplight": {
                                            "id": "o7m0lvoppgq5k"
                                          }
                                        },
                                        "description": {
                                          "description": "Description of the break type.",
                                          "type": "string",
                                          "x-stoplight": {
                                            "id": "a5p9w6xh9j6f7"
                                          }
                                        },
                                        "id": {
                                          "description": "The ID of the break type.",
                                          "type": "string",
                                          "x-stoplight": {
                                            "id": "6wvp5m2dxbm4k"
                                          }
                                        },
                                        "is_over_time_eligible": {
                                          "description": "Whether the break counts towards hours worked.",
                                          "type": "boolean",
                                          "x-stoplight": {
                                            "id": "voi1vyxim7hbv"
                                          }
                                        },
                                        "is_paid": {
                                          "description": "Whether the break is paid.",
                                          "type": "boolean",
                                          "x-stoplight": {
                                            "id": "4y6z1zn070sp7"
                                          }
                                        },
                                        "updated_at": {
                                          "type": "string",
                                          "x-stoplight": {
                                            "id": "28xhb1be1d9sa"
                                          }
                                        }
                                      },
                                      "title": "BreakType",
                                      "type": "object",
                                      "x-stoplight": {
                                        "id": "oygid44sewbb6"
                                      }
                                    },
                                    "type": "array",
                                    "x-stoplight": {
                                      "id": "trq0psv6x9vci"
                                    }
                                  },
                                  "display_name": {
                                    "description": "Name of the final earning for the segment.",
                                    "type": "string",
                                    "x-stoplight": {
                                      "id": "xw75umlx9c58b"
                                    }
                                  },
                                  "end_time": {
                                    "description": "The end time of the segment.",
                                    "type": "string",
                                    "x-stoplight": {
                                      "id": "3yr221r55ia3d"
                                    }
                                  },
                                  "job_codes": {
                                    "description": "The job codes associated with the segment.",
                                    "items": {
                                      "description": "A job code object is a specific instance of an option underneath a dimension that time can be tracked against. If the configured dimension were to be 'Location', for example, job code options underneath that dimension might include 'San Francisco', 'New York', 'Bangalore', etc.",
                                      "examples": [
                                        {
                                          "dimension": "string",
                                          "group": "string",
                                          "id": "string",
                                          "value": "string"
                                        }
                                      ],
                                      "properties": {
                                        "dimension": {
                                          "description": "The id of the associated dimension.",
                                          "type": "string"
                                        },
                                        "group": {
                                          "description": "The id of the group that applies to the job code, if one exists.",
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "id": {
                                          "description": "The id of the job code.",
                                          "type": "string"
                                        },
                                        "spoke_identifier": {
                                          "description": "The unique identifier of the job code in an outside system.",
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "value": {
                                          "description": "The name of the job code.",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "id",
                                        "dimension",
                                        "value"
                                      ],
                                      "title": "JobCode",
                                      "type": "object",
                                      "x-stoplight": {
                                        "id": "stafvy5ggbqqp"
                                      }
                                    },
                                    "type": "array",
                                    "x-stoplight": {
                                      "id": "y86fdpb6sfsct"
                                    }
                                  },
                                  "ot_multiplier": {
                                    "description": "The multiplier for overtime hours in this segment.",
                                    "type": "number",
                                    "x-stoplight": {
                                      "id": "z9n47uj1q4qcn"
                                    }
                                  },
                                  "pay_rate": {
                                    "description": "The pay rate for this segment.",
                                    "type": "number",
                                    "x-stoplight": {
                                      "id": "aw68dpsse2lpz"
                                    }
                                  },
                                  "start_time": {
                                    "description": "The start time of the segment.",
                                    "type": "string",
                                    "x-stoplight": {
                                      "id": "czx7e48htg43r"
                                    }
                                  }
                                },
                                "title": "Segment",
                                "type": "object",
                                "x-stoplight": {
                                  "id": "a3o59g1lywx1n"
                                }
                              },
                              "type": "array",
                              "x-stoplight": {
                                "id": "lor0us90oisv8"
                              }
                            },
                            "shouldCreateExtraHoursRun": {
                              "description": "Should this time entry be considered for extra hours run",
                              "type": [
                                "boolean",
                                "null"
                              ],
                              "x-stoplight": {
                                "id": "cg5o5e65fqlkb"
                              }
                            },
                            "startTime": {
                              "description": "The start time of the time entry, in UTC.",
                              "type": "string"
                            },
                            "status": {
                              "description": "The status of the time entry",
                              "type": [
                                "string",
                                "null"
                              ],
                              "x-stoplight": {
                                "id": "cc1irgnobww0r"
                              }
                            },
                            "tags": {
                              "items": {
                                "type": "string",
                                "x-stoplight": {
                                  "id": "unifm2a22kjgn"
                                }
                              },
                              "type": [
                                "array",
                                "null"
                              ],
                              "x-stoplight": {
                                "id": "lmxjahbi6ffxn"
                              }
                            },
                            "timezone": {
                              "description": "The timezone the time entry was logged in. Can be used in conjunction with startTime and endTime to derive the localized start/end times of the time entry.",
                              "type": "string"
                            }
                          },
                          "title": "TimeEntry",
                          "type": "object",
                          "x-stoplight": {
                            "id": "x1hxvuaje0sl5"
                          }
                        },
                        "type": "array",
                        "x-stoplight": {
                          "id": "ca80i85v2hnt3"
                        }
                      }
                    },
                    "type": "object"
                  }
                }
              },
              "description": "Internal Server Error"
            }
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "POST Bulk Create Time Entries",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      }
    },
    "/platform/api/time_entries/bulk_update": {
      "patch": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/patch-platform-api-time-entries-bulk-update"
        },
        "operationId": "rippling.t_and_a_api.patch_platform_api_time_entries_bulk_update",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "items": {
                  "properties": {
                    "breaks": {
                      "items": {
                        "properties": {
                          "companyBreakType": {
                            "description": "The companyBreakType associated with the break",
                            "type": "string"
                          },
                          "endTime": {
                            "description": "The end time of the time entry",
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "startTime": {
                            "description": "The start time of the time entry",
                            "type": "string"
                          }
                        },
                        "type": "object"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "comments": {
                      "description": "A list of comment strings to associate with the time entry",
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "id": {
                      "description": "The id of the time entry",
                      "type": "string"
                    },
                    "idempotencyKey": {
                      "description": "External identifier for the TimeEntry. Rippling will ensure that this is unique on the backend.",
                      "type": "string"
                    },
                    "jobShifts": {
                      "items": {
                        "$ref": "#/components/schemas/TAndAApiTimeEntryJobShift07e83142e4b9"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "tags": {
                      "description": "A list of tags to associate with the time entry",
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    }
                  },
                  "type": "object"
                },
                "type": "array"
              }
            }
          },
          "required": false
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/OutputTAndAApiTimeEntry25c46c0233db"
                  },
                  "type": "array"
                }
              }
            },
            "description": "OK"
          },
          "500": {
            "description": "Internal Server Error",
            "x-rippling-source-response": {
              "content": {
                "application/json": {
                  "schema": {
                    "properties": {
                      "failedEntries": {
                        "description": "The failed to update time entries",
                        "items": {
                          "properties": {
                            "entryData": {
                              "description": "The data passed in to create the time entry",
                              "type": "object",
                              "x-stoplight": {
                                "id": "xs9gh8kvolnle"
                              }
                            },
                            "error": {
                              "description": "The error returned while creating the time entry",
                              "type": "string",
                              "x-stoplight": {
                                "id": "3uib7zpuyuhvu"
                              }
                            }
                          },
                          "type": "object",
                          "x-stoplight": {
                            "id": "rh0scgxo4or0q"
                          }
                        },
                        "type": "array",
                        "x-stoplight": {
                          "id": "cyeoaluvn8sjf"
                        }
                      },
                      "successfulEntries": {
                        "description": "The entries that were updated successfully",
                        "items": {
                          "description": "A time entry object corresponds to a singular continuous instance of work from clock in to clock out.",
                          "examples": [
                            {
                              "breaks": [
                                {
                                  "description": "string",
                                  "endTime": "string",
                                  "isOTEligible": "string",
                                  "isPaid": "string",
                                  "startTime": "string"
                                }
                              ],
                              "endTime": "string",
                              "id": "string",
                              "jobShifts": [
                                {
                                  "endTime": "string",
                                  "jobCodes": [
                                    "string"
                                  ],
                                  "startTime": "string"
                                }
                              ],
                              "role": "string",
                              "startTime": "string"
                            }
                          ],
                          "properties": {
                            "breaks": {
                              "items": {
                                "description": "A specific instance of a break taken within a time entry.",
                                "examples": [
                                  {
                                    "description": "string",
                                    "endTime": "string",
                                    "isOTEligible": "string",
                                    "isPaid": "string",
                                    "startTime": "string"
                                  }
                                ],
                                "properties": {
                                  "description": {
                                    "type": "string"
                                  },
                                  "endTime": {
                                    "description": "The end time of the break, in UTC. Will be null if the break has not yet completed.",
                                    "type": [
                                      "string",
                                      "null"
                                    ]
                                  },
                                  "isOTEligible": {
                                    "description": "Whether or not the break counts towards hours worked.",
                                    "type": "string"
                                  },
                                  "isPaid": {
                                    "type": "string"
                                  },
                                  "startTime": {
                                    "description": "The start time of the break, in UTC.",
                                    "type": "string"
                                  }
                                },
                                "title": "TimeEntryBreak",
                                "type": "object"
                              },
                              "type": "array"
                            },
                            "comments": {
                              "items": {
                                "type": "string",
                                "x-stoplight": {
                                  "id": "fx8d26ytceips"
                                }
                              },
                              "type": "array",
                              "x-stoplight": {
                                "id": "gjzdfao78k5ju"
                              }
                            },
                            "duration": {
                              "description": "Total length of the time entry, in hours.",
                              "type": "string"
                            },
                            "endTime": {
                              "description": "The end time of the time entry, in UTC. Will be null if the time entry\n has not yet completed.",
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "id": {
                              "type": "string"
                            },
                            "idempotencyKey": {
                              "type": [
                                "string",
                                "null"
                              ],
                              "x-stoplight": {
                                "id": "9j9ihpeo5kkfh"
                              }
                            },
                            "jobShifts": {
                              "items": {
                                "description": "A specific instance of a job shift within a time entry. The instance includes the start time of the shift, end time of the shift, any a map from dimension_id to job_code_id for all job codes selected for this particular shift. Any time the job codes switch, a new instance of TimeEntryJobShift is created.",
                                "examples": [
                                  {
                                    "endTime": "string",
                                    "jobCodes": [
                                      "string"
                                    ],
                                    "startTime": "string"
                                  }
                                ],
                                "properties": {
                                  "endTime": {
                                    "description": "The end time of the shift, in UTC. Will be null if the shift has not yet completed.",
                                    "type": [
                                      "string",
                                      "null"
                                    ]
                                  },
                                  "jobCodes": {
                                    "description": "A list of job code ids worked during the shift. If empty, no job codes were worked during the shift.",
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": "array"
                                  },
                                  "startTime": {
                                    "description": "The start time of the shift, in UTC.",
                                    "type": "string"
                                  }
                                },
                                "title": "TimeEntryJobShift",
                                "type": "object"
                              },
                              "type": "array"
                            },
                            "overtimeHours": {
                              "description": "Total overtime hours in the time entry.",
                              "type": "string"
                            },
                            "pieceRatePremiums": {
                              "items": {
                                "description": "An additional amount that employees can get per unit worked. For example, an additonal amount per item, per customer, per class, etc.",
                                "properties": {
                                  "premium_rate": {
                                    "description": "The pay rate for this piece rate premium.",
                                    "type": "number",
                                    "x-stoplight": {
                                      "id": "bt90eqpk9acuk"
                                    }
                                  },
                                  "premium_units": {
                                    "description": "The total units produced at the premium rate.",
                                    "type": "number",
                                    "x-stoplight": {
                                      "id": "3do8a197adnmv"
                                    }
                                  }
                                },
                                "title": "PieceRatePremium",
                                "type": "object",
                                "x-stoplight": {
                                  "id": "4zeql5lfg6sgt"
                                }
                              },
                              "type": "array",
                              "x-stoplight": {
                                "id": "794gy9b0awlh8"
                              }
                            },
                            "premiums": {
                              "items": {
                                "description": "An additional amount of money that employees can get per hour worked.",
                                "properties": {
                                  "premium_hours": {
                                    "description": "The total hours worked for at the premium rate.",
                                    "type": "number"
                                  },
                                  "premium_rate": {
                                    "description": "The pay rate for this premium.",
                                    "type": "number"
                                  }
                                },
                                "title": "Premium",
                                "type": "object",
                                "x-stoplight": {
                                  "id": "4jn5turg4z3b0"
                                }
                              },
                              "type": "array",
                              "x-stoplight": {
                                "id": "aias3w8kfutxe"
                              }
                            },
                            "regularHours": {
                              "description": "Total regular hours (base pay) in the time entry.",
                              "type": "string"
                            },
                            "role": {
                              "type": "string"
                            },
                            "segments": {
                              "items": {
                                "description": "A piece of continuous time within the time entry that is associated with some type of work or break. This  is the pay rate that is used to sync to Payroll and pay employees.",
                                "properties": {
                                  "break_type": {
                                    "items": {
                                      "properties": {
                                        "created_at": {
                                          "type": "string",
                                          "x-stoplight": {
                                            "id": "o7m0lvoppgq5k"
                                          }
                                        },
                                        "description": {
                                          "description": "Description of the break type.",
                                          "type": "string",
                                          "x-stoplight": {
                                            "id": "a5p9w6xh9j6f7"
                                          }
                                        },
                                        "id": {
                                          "description": "The ID of the break type.",
                                          "type": "string",
                                          "x-stoplight": {
                                            "id": "6wvp5m2dxbm4k"
                                          }
                                        },
                                        "is_over_time_eligible": {
                                          "description": "Whether the break counts towards hours worked.",
                                          "type": "boolean",
                                          "x-stoplight": {
                                            "id": "voi1vyxim7hbv"
                                          }
                                        },
                                        "is_paid": {
                                          "description": "Whether the break is paid.",
                                          "type": "boolean",
                                          "x-stoplight": {
                                            "id": "4y6z1zn070sp7"
                                          }
                                        },
                                        "updated_at": {
                                          "type": "string",
                                          "x-stoplight": {
                                            "id": "28xhb1be1d9sa"
                                          }
                                        }
                                      },
                                      "title": "BreakType",
                                      "type": "object",
                                      "x-stoplight": {
                                        "id": "oygid44sewbb6"
                                      }
                                    },
                                    "type": "array",
                                    "x-stoplight": {
                                      "id": "trq0psv6x9vci"
                                    }
                                  },
                                  "display_name": {
                                    "description": "Name of the final earning for the segment.",
                                    "type": "string",
                                    "x-stoplight": {
                                      "id": "xw75umlx9c58b"
                                    }
                                  },
                                  "end_time": {
                                    "description": "The end time of the segment.",
                                    "type": "string",
                                    "x-stoplight": {
                                      "id": "3yr221r55ia3d"
                                    }
                                  },
                                  "job_codes": {
                                    "description": "The job codes associated with the segment.",
                                    "items": {
                                      "description": "A job code object is a specific instance of an option underneath a dimension that time can be tracked against. If the configured dimension were to be 'Location', for example, job code options underneath that dimension might include 'San Francisco', 'New York', 'Bangalore', etc.",
                                      "examples": [
                                        {
                                          "dimension": "string",
                                          "group": "string",
                                          "id": "string",
                                          "value": "string"
                                        }
                                      ],
                                      "properties": {
                                        "dimension": {
                                          "description": "The id of the associated dimension.",
                                          "type": "string"
                                        },
                                        "group": {
                                          "description": "The id of the group that applies to the job code, if one exists.",
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "id": {
                                          "description": "The id of the job code.",
                                          "type": "string"
                                        },
                                        "spoke_identifier": {
                                          "description": "The unique identifier of the job code in an outside system.",
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "value": {
                                          "description": "The name of the job code.",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "id",
                                        "dimension",
                                        "value"
                                      ],
                                      "title": "JobCode",
                                      "type": "object",
                                      "x-stoplight": {
                                        "id": "stafvy5ggbqqp"
                                      }
                                    },
                                    "type": "array",
                                    "x-stoplight": {
                                      "id": "y86fdpb6sfsct"
                                    }
                                  },
                                  "ot_multiplier": {
                                    "description": "The multiplier for overtime hours in this segment.",
                                    "type": "number",
                                    "x-stoplight": {
                                      "id": "z9n47uj1q4qcn"
                                    }
                                  },
                                  "pay_rate": {
                                    "description": "The pay rate for this segment.",
                                    "type": "number",
                                    "x-stoplight": {
                                      "id": "aw68dpsse2lpz"
                                    }
                                  },
                                  "start_time": {
                                    "description": "The start time of the segment.",
                                    "type": "string",
                                    "x-stoplight": {
                                      "id": "czx7e48htg43r"
                                    }
                                  }
                                },
                                "title": "Segment",
                                "type": "object",
                                "x-stoplight": {
                                  "id": "a3o59g1lywx1n"
                                }
                              },
                              "type": "array",
                              "x-stoplight": {
                                "id": "lor0us90oisv8"
                              }
                            },
                            "shouldCreateExtraHoursRun": {
                              "description": "Should this time entry be considered for extra hours run",
                              "type": [
                                "boolean",
                                "null"
                              ],
                              "x-stoplight": {
                                "id": "cg5o5e65fqlkb"
                              }
                            },
                            "startTime": {
                              "description": "The start time of the time entry, in UTC.",
                              "type": "string"
                            },
                            "status": {
                              "description": "The status of the time entry",
                              "type": [
                                "string",
                                "null"
                              ],
                              "x-stoplight": {
                                "id": "cc1irgnobww0r"
                              }
                            },
                            "tags": {
                              "items": {
                                "type": "string",
                                "x-stoplight": {
                                  "id": "unifm2a22kjgn"
                                }
                              },
                              "type": [
                                "array",
                                "null"
                              ],
                              "x-stoplight": {
                                "id": "lmxjahbi6ffxn"
                              }
                            },
                            "timezone": {
                              "description": "The timezone the time entry was logged in. Can be used in conjunction with startTime and endTime to derive the localized start/end times of the time entry.",
                              "type": "string"
                            }
                          },
                          "title": "TimeEntry",
                          "type": "object",
                          "x-stoplight": {
                            "id": "dg85wnils9dam"
                          }
                        },
                        "type": "array",
                        "x-stoplight": {
                          "id": "gfb0qkw08mo5q"
                        }
                      }
                    },
                    "type": "object"
                  }
                }
              },
              "description": "Internal Server Error"
            }
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "PATCH Bulk Update Time Entries",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      }
    },
    "/platform/api/time_entries/for_pay_period": {
      "get": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/get-time-entries-for-pay-period"
        },
        "operationId": "rippling.t_and_a_api.get_time_entries_for_pay_period",
        "parameters": [
          {
            "in": "query",
            "name": "pay_period_start_date",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "pay_schedule",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "roles",
            "required": false,
            "schema": {
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/OutputTAndAApiTimeEntry25c46c0233db"
                  },
                  "type": "array"
                }
              }
            },
            "description": "OK"
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "GET Time Entries for a Pay Period",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      }
    },
    "/platform/api/time_entries/for_role": {
      "get": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/get-time-entries-for-role"
        },
        "operationId": "rippling.t_and_a_api.get_time_entries_for_role",
        "parameters": [
          {
            "in": "query",
            "name": "role",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/OutputTAndAApiTimeEntry25c46c0233db"
                  },
                  "type": "array"
                }
              }
            },
            "description": "OK"
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "GET Time Entries for an Employee",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      }
    },
    "/platform/api/time_entries/get_pay_periods_for_role": {
      "get": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/get-time-entries-get-pay-periods-for-role"
        },
        "operationId": "rippling.t_and_a_api.get_time_entries_get_pay_periods_for_role",
        "parameters": [
          {
            "in": "query",
            "name": "role",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/OutputTAndAApiPayPeriodee63bf1ced15"
                  },
                  "type": "array"
                }
              }
            },
            "description": "OK"
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "GET Pay Periods for an Employee",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      }
    },
    "/platform/api/time_entries/get_pay_schedules_to_pay_periods": {
      "get": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/get-time-entries-get-pay-schedules-to-pay-periods"
        },
        "operationId": "rippling.t_and_a_api.get_time_entries_get_pay_schedules_to_pay_periods",
        "parameters": [],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "[pay_schedule_id]": {
                      "items": {
                        "$ref": "#/components/schemas/OutputTAndAApiPayPeriodee63bf1ced15"
                      },
                      "type": "array"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "OK"
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "GET Pay Schedules to Pay Periods Map",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      }
    },
    "/platform/api/time_entries/{time_entry_id}": {
      "delete": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/delete-platform-api-time-entries-time-entry-id"
        },
        "operationId": "rippling.t_and_a_api.delete_platform_api_time_entries_time_entry_id",
        "parameters": [
          {
            "in": "path",
            "name": "time_entry_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "DELETE Time Entry",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      },
      "get": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/get-time-entries-time-entry-id"
        },
        "operationId": "rippling.t_and_a_api.get_time_entries_time_entry_id",
        "parameters": [
          {
            "in": "path",
            "name": "time_entry_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutputTAndAApiTimeEntry25c46c0233db"
                }
              }
            },
            "description": "OK"
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "GET Time Entry",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      },
      "patch": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/patch-time-entries-time-entry-id"
        },
        "operationId": "rippling.t_and_a_api.patch_time_entries_time_entry_id",
        "parameters": [
          {
            "in": "path",
            "name": "time_entry_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "breaks": {
                    "items": {
                      "properties": {
                        "companyBreakType": {
                          "type": "string"
                        },
                        "endTime": {
                          "type": "string"
                        },
                        "startTime": {
                          "type": "string"
                        }
                      },
                      "type": "object"
                    },
                    "type": "array"
                  },
                  "jobShifts": {
                    "items": {
                      "properties": {
                        "endTime": {
                          "type": "string"
                        },
                        "jobCodes": {
                          "items": {
                            "type": "string"
                          },
                          "type": "array"
                        },
                        "startTime": {
                          "type": "string"
                        }
                      },
                      "type": "object"
                    },
                    "type": "array"
                  }
                },
                "type": "object"
              }
            }
          },
          "required": false
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutputTAndAApiTimeEntry25c46c0233db"
                }
              }
            },
            "description": "OK"
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "PATCH Time Entry",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      }
    },
    "/platform/api/timecards/for_pay_period": {
      "get": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/get-timecards-for-pay-period"
        },
        "operationId": "rippling.t_and_a_api.get_timecards_for_pay_period",
        "parameters": [
          {
            "in": "query",
            "name": "pay_period_start_date",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "pay_schedule",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "roles",
            "required": false,
            "schema": {
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/OutputTAndAApiTimecardc5cb923dc4e2"
                  },
                  "type": "array"
                }
              }
            },
            "description": "OK"
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "GET Timecards for a Pay Period",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      }
    },
    "/platform/api/timecards/for_role": {
      "get": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/get-timecards-for-role"
        },
        "operationId": "rippling.t_and_a_api.get_timecards_for_role",
        "parameters": [
          {
            "in": "query",
            "name": "role",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/OutputTAndAApiTimecardc5cb923dc4e2"
                  },
                  "type": "array"
                }
              }
            },
            "description": "OK"
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "GET Timecards for an Employee",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      }
    },
    "/platform/api/timecards/{timecard_id}": {
      "get": {
        "externalDocs": {
          "url": "https://developer.rippling.com/documentation/t-and-a-api/reference/get-timecards-timecard-id"
        },
        "operationId": "rippling.t_and_a_api.get_timecards_timecard_id",
        "parameters": [
          {
            "in": "path",
            "name": "timecard_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutputTAndAApiTimecardc5cb923dc4e2"
                }
              }
            },
            "description": "OK"
          }
        },
        "servers": [
          {
            "description": "production",
            "url": "https://api.rippling.com"
          },
          {
            "description": "sandbox",
            "url": "https://api.ripplingpreview.com"
          }
        ],
        "summary": "GET Timecard",
        "x-rippling-entitlements": [],
        "x-rippling-required-scopes": []
      }
    }
  }
}
