openapi: 3.2.0 info: title: Bindbee Employee Payroll Runs API version: 0.1.0 tags: - name: Employee Payroll Runs paths: /api/hris/v1/employee-payroll-runs: get: tags: - Employee Payroll Runs summary: Get Employee Payroll Runs description: Returns a list of EmployeePayrollRun objects. operationId: get_employee_payroll_runs_api_hris_v1_employee_payroll_runs_get security: - HTTPBearer: [] parameters: - name: ids in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the employee payroll runs to fetch examples: - 01931edf-04b6-7391-8a5c-93ac4b395316,01931edf-04c8-7649-a470-d85f6161bd1a title: Ids description: The ID of the employee payroll runs to fetch - name: employee_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the employees to fetch employee payroll run for examples: - 01931edf-04b6-7391-8a5c-93ac4b395316,01931edf-04c8-7649-a470-d85f6161bd1a title: Employee Id description: The ID of the employees to fetch employee payroll run for - name: payroll_run_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The IDs of the payroll runs to fetch employee payroll run for examples: - 01931edf-04b6-7391-8a5c-93ac4b395316,01931edf-04c8-7649-a470-d85f6161bd1a title: Payroll Run Id description: The IDs of the payroll runs to fetch employee payroll run for - name: remote_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The third-party API ID of the matching object. examples: - '3235005483341316245' title: Remote Id description: The third-party API ID of the matching object. - name: include_raw_data in: query required: false schema: type: boolean description: Whether to include the original data Bindbee fetched from the third-party to produce these models. examples: - false default: false title: Include Raw Data description: Whether to include the original data Bindbee fetched from the third-party to produce these models. - name: include_custom_fields in: query required: false schema: type: boolean description: Whether to include custom fields in the response. examples: - false default: false title: Include Custom Fields description: Whether to include custom fields in the response. - name: page_size in: query required: false schema: type: integer maximum: 200 minimum: 1 description: Number of results to return per page. Maximum size is 200. default: 50 title: Page Size description: Number of results to return per page. Maximum size is 200. - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: The pagination cursor value. title: Cursor description: The pagination cursor value. - name: modified_after in: query required: false schema: anyOf: - type: string - type: 'null' description: 'If provided, only objects synced by Bindbee after this date time will be returned. Format: DateTime (ISO 8601). If no timezone offset is supplied, the value is interpreted as UTC.' examples: - '2024-02-21T21:22:12.993Z' title: Modified After description: 'If provided, only objects synced by Bindbee after this date time will be returned. Format: DateTime (ISO 8601). If no timezone offset is supplied, the value is interpreted as UTC.' - name: start_date_from in: query required: false schema: anyOf: - type: string - type: 'null' description: 'If provided, only objects with start_date same or after this date time will be returned. Format: DateTime (ISO 8601). If no timezone offset is supplied, the value is interpreted as UTC.' examples: - '2024-02-21T21:22:12.993Z' title: Start Date From description: 'If provided, only objects with start_date same or after this date time will be returned. Format: DateTime (ISO 8601). If no timezone offset is supplied, the value is interpreted as UTC.' - name: start_date_to in: query required: false schema: anyOf: - type: string - type: 'null' description: 'If provided, only objects with start_date same or before this date time will be returned. Format: DateTime (ISO 8601). If no timezone offset is supplied, the value is interpreted as UTC.' examples: - '2024-02-21T21:22:12.993Z' title: Start Date To description: 'If provided, only objects with start_date same or before this date time will be returned. Format: DateTime (ISO 8601). If no timezone offset is supplied, the value is interpreted as UTC.' - name: end_date_from in: query required: false schema: anyOf: - type: string - type: 'null' description: 'If provided, only objects with end_date same or after this date time will be returned. Format: DateTime (ISO 8601). If no timezone offset is supplied, the value is interpreted as UTC.' examples: - '2024-02-21T21:22:12.993Z' title: End Date From description: 'If provided, only objects with end_date same or after this date time will be returned. Format: DateTime (ISO 8601). If no timezone offset is supplied, the value is interpreted as UTC.' - name: end_date_to in: query required: false schema: anyOf: - type: string - type: 'null' description: 'If provided, only objects with end_date same or before this date time will be returned. Format: DateTime (ISO 8601). If no timezone offset is supplied, the value is interpreted as UTC.' examples: - '2024-02-21T21:22:12.993Z' title: End Date To description: 'If provided, only objects with end_date same or before this date time will be returned. Format: DateTime (ISO 8601). If no timezone offset is supplied, the value is interpreted as UTC.' - name: check_date_from in: query required: false schema: anyOf: - type: string - type: 'null' description: 'If provided, only objects with check_date same or after this date time will be returned. Format: DateTime (ISO 8601). If no timezone offset is supplied, the value is interpreted as UTC.' examples: - '2024-02-21T21:22:12.993Z' title: Check Date From description: 'If provided, only objects with check_date same or after this date time will be returned. Format: DateTime (ISO 8601). If no timezone offset is supplied, the value is interpreted as UTC.' - name: check_date_to in: query required: false schema: anyOf: - type: string - type: 'null' description: 'If provided, only objects with check_date same or before this date time will be returned. Format: DateTime (ISO 8601). If no timezone offset is supplied, the value is interpreted as UTC.' examples: - '2024-02-21T21:22:12.993Z' title: Check Date To description: 'If provided, only objects with check_date same or before this date time will be returned. Format: DateTime (ISO 8601). If no timezone offset is supplied, the value is interpreted as UTC.' - name: expand in: query required: false schema: anyOf: - type: string - type: 'null' description: Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. You can also specify required fields in [] for each relation name. examples: - manager[first_name,last_name] title: Expand description: Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. You can also specify required fields in [] for each relation name. - name: x-connector-token in: header required: true schema: type: string title: X-Connector-Token responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaginatedResponse_HrisEmployeePayrollRun_' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '401': description: Missing or invalid bearer authentication credentials. headers: WWW-Authenticate: description: Bearer authentication challenge. schema: type: string content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: The credentials are valid but do not permit access to this resource, e.g. a connector token used on a different API category or a model whose writes are disabled. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '429': description: Rate limit exceeded. headers: X-RateLimit-Limit: description: Maximum requests allowed in the current window. schema: type: integer X-RateLimit-Remaining: description: Requests remaining in the current window. schema: type: integer X-RateLimit-Reset: description: Unix timestamp (seconds since epoch) at which the current rate-limit window resets. schema: type: integer Retry-After: description: Seconds to wait before retrying the request. schema: type: integer content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' post: tags: - Employee Payroll Runs summary: Create Employee Payroll Run description: Creates a Employee Payroll Run object with the given values. operationId: create_employee_payroll_run_api_hris_v1_employee_payroll_runs_post security: - HTTPBearer: [] parameters: - name: x-idempotency-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Key to guarantee idempotent write execution. title: X-Idempotency-Key description: Key to guarantee idempotent write execution. - name: x-connector-token in: header required: true schema: type: string title: X-Connector-Token responses: '201': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '401': description: Missing or invalid bearer authentication credentials. headers: WWW-Authenticate: description: Bearer authentication challenge. schema: type: string content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: The credentials are valid but do not permit access to this resource, e.g. a connector token used on a different API category or a model whose writes are disabled. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '429': description: Rate limit exceeded. headers: X-RateLimit-Limit: description: Maximum requests allowed in the current window. schema: type: integer X-RateLimit-Remaining: description: Requests remaining in the current window. schema: type: integer X-RateLimit-Reset: description: Unix timestamp (seconds since epoch) at which the current rate-limit window resets. schema: type: integer Retry-After: description: Seconds to wait before retrying the request. schema: type: integer content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /api/hris/v1/employee-payroll-runs/meta/post: get: tags: - Employee Payroll Runs summary: Get Create Employee Payroll Run Meta description: Returns request schema for POST Employee Payroll Run request. operationId: get_create_employee_payroll_run_meta_api_hris_v1_employee_payroll_runs_meta_post_get security: - HTTPBearer: [] parameters: - name: x-connector-token in: header required: true schema: type: string title: X-Connector-Token responses: '200': description: Successful Response content: application/json: schema: type: object additionalProperties: true title: Response Get Create Employee Payroll Run Meta Api Hris V1 Employee Payroll Runs Meta Post Get '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '401': description: Missing or invalid bearer authentication credentials. headers: WWW-Authenticate: description: Bearer authentication challenge. schema: type: string content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: The credentials are valid but do not permit access to this resource, e.g. a connector token used on a different API category or a model whose writes are disabled. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '429': description: Rate limit exceeded. headers: X-RateLimit-Limit: description: Maximum requests allowed in the current window. schema: type: integer X-RateLimit-Remaining: description: Requests remaining in the current window. schema: type: integer X-RateLimit-Reset: description: Unix timestamp (seconds since epoch) at which the current rate-limit window resets. schema: type: integer Retry-After: description: Seconds to wait before retrying the request. schema: type: integer content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /api/hris/v1/employee-payroll-runs/{id}: get: tags: - Employee Payroll Runs summary: Get Employee Payroll Runs By Id description: Returns an EmployeePayrollRun object with the given id operationId: get_employee_payroll_runs_by_id_api_hris_v1_employee_payroll_runs__id__get security: - HTTPBearer: [] parameters: - name: id in: path required: true schema: type: string format: uuid title: Id - name: include_raw_data in: query required: false schema: type: boolean description: Whether to include the original data Bindbee fetched from the third-party to produce these models. examples: - false default: false title: Include Raw Data description: Whether to include the original data Bindbee fetched from the third-party to produce these models. - name: include_custom_fields in: query required: false schema: type: boolean description: Whether to include custom fields in the response. examples: - false default: false title: Include Custom Fields description: Whether to include custom fields in the response. - name: expand in: query required: false schema: anyOf: - type: string - type: 'null' description: Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. You can also specify required fields in [] for each relation name. examples: - manager[first_name,last_name] title: Expand description: Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. You can also specify required fields in [] for each relation name. - name: x-connector-token in: header required: true schema: type: string title: X-Connector-Token responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/HrisEmployeePayrollRun' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '401': description: Missing or invalid bearer authentication credentials. headers: WWW-Authenticate: description: Bearer authentication challenge. schema: type: string content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: The credentials are valid but do not permit access to this resource, e.g. a connector token used on a different API category or a model whose writes are disabled. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '429': description: Rate limit exceeded. headers: X-RateLimit-Limit: description: Maximum requests allowed in the current window. schema: type: integer X-RateLimit-Remaining: description: Requests remaining in the current window. schema: type: integer X-RateLimit-Reset: description: Unix timestamp (seconds since epoch) at which the current rate-limit window resets. schema: type: integer Retry-After: description: Seconds to wait before retrying the request. schema: type: integer content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: The requested resource was not found. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' components: schemas: Deduction: properties: name: anyOf: - type: string - type: 'null' title: Name description: The deduction's name. examples: - Social Security employee_deduction: anyOf: - type: integer - type: number - type: 'null' title: Employee Deduction description: The amount of money that is withheld from an employee's gross pay by the employee. examples: - 27.22 company_deduction: anyOf: - type: integer - type: number - type: 'null' title: Company Deduction description: The amount of money that is withheld on behalf of an employee by the company. examples: - 77.57 currency: anyOf: - type: string - type: 'null' title: Currency description: The currency of the deduction amount. examples: - USD payroll_code: anyOf: - type: string format: uuid - type: 'null' title: Payroll Code description: The ID of the payroll code associated with this deduction. examples: - 019fbd01-e394-76ed-93fb-b9eda49a3b41 type: object required: - name - employee_deduction - company_deduction title: Deduction Tax: properties: name: anyOf: - type: string - type: 'null' title: Name description: The tax's name. examples: - California State Income Tax amount: anyOf: - type: integer - type: number - type: 'null' title: Amount description: The tax amount. examples: - 175.22 currency: anyOf: - type: string - type: 'null' title: Currency description: The currency of the tax amount. examples: - USD payroll_code: anyOf: - type: string format: uuid - type: 'null' title: Payroll Code description: The ID of the payroll code associated with this tax. examples: - 019fbd01-e5ea-7d5a-a602-bd9016a271cc type: object required: - name - amount title: Tax Earning: properties: amount: anyOf: - type: integer - type: number - type: 'null' title: Amount description: The amount earned. examples: - '27151' name: anyOf: - type: string - type: 'null' enum: - SALARY - REIMBURSEMENT - OVERTIME - BONUS - HOURLY title: Name description: The type of earning. If the value is not one of the defined enum values, the original value passed through will be returned. examples: - SALARY currency: anyOf: - type: string - type: 'null' title: Currency description: The currency of the earning amount. examples: - USD payroll_code: anyOf: - type: string format: uuid - type: 'null' title: Payroll Code description: The ID of the payroll code associated with this earning. examples: - 019fbd01-e900-7418-a54c-3fcba1299e88 type: object required: - amount - name title: Earning PaginatedResponse_HrisEmployeePayrollRun_: properties: cursor: anyOf: - type: string - type: 'null' title: Cursor description: Cursor value to fetch next set of items examples: - MDE4YjE4ZWYtYzk5Yy03YTg2LTk5NDYtN2I3YzlkNTQzM2U1 page_size: type: integer title: Page Size description: Indicates the count of items in the response examples: - 50 items: items: $ref: '#/components/schemas/HrisEmployeePayrollRun' type: array title: Items description: List of items in the current response type: object required: - cursor - page_size - items title: PaginatedResponse[HrisEmployeePayrollRun] ErrorResponse: type: object required: - detail properties: detail: type: string ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type input: title: Input ctx: type: object title: Context type: object required: - loc - msg - type title: ValidationError HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError HrisEmployeePayrollRun: properties: id: type: string format: uuid title: Id examples: - 018b18ef-c487-703c-afd9-0ca478ccd9d6 remote_id: anyOf: - type: string - type: 'null' title: Remote Id description: The third-party API ID of the matching object. examples: - '123321' modified_at: type: string format: date-time title: Modified At description: This is the datetime that this object was last updated by Bindbee examples: - '2021-10-16T00:00:00Z' raw_data: anyOf: - additionalProperties: true type: object - type: 'null' title: Raw Data description: This is the Raw data examples: - key_1: Platform dependent data 1 key_2: Platform dependent data 2 custom_fields: anyOf: - additionalProperties: true type: object - type: 'null' title: Custom Fields description: The custom fields related to the model examples: - category_group: REG disability_type: ASBERG hire_date: '1991-03-16T00:00:00' hire_source: REFER nationality: USA original_hire_date: '1991-03-16T00:00:00' employee: anyOf: - {} - type: 'null' title: Employee description: The employee whose payroll is being run. examples: - 018b168d-70f9-7043-a796-56d66a4f8f07 payroll_run: anyOf: - {} - type: 'null' title: Payroll Run description: The payroll being run. examples: - 018b709e-b6ef-7db4-902a-a064157bdba2 gross_pay: anyOf: - type: integer - type: number - type: 'null' title: Gross Pay description: The total earnings throughout a given period for an employee before any deductions are made. examples: - 772277.77 net_pay: anyOf: - type: integer - type: number - type: 'null' title: Net Pay description: The take-home pay throughout a given period for an employee after deductions are made. examples: - 577221.27 start_date: anyOf: - type: string - type: 'null' title: Start Date description: The day and time the benefit started. examples: - '2023-07-01T00:00:00Z' end_date: anyOf: - type: string - type: 'null' title: End Date description: The day and time the benefit ended. examples: - '2023-07-31T00:00:00Z' check_date: anyOf: - type: string - type: 'null' title: Check Date description: The day and time the payroll run was checked. examples: - '2023-08-31T00:00:00Z' earnings: anyOf: - items: $ref: '#/components/schemas/Earning' type: array - type: 'null' title: Earnings description: The earnings of the Employee examples: - amount: '27151' name: SALARY deductions: anyOf: - items: $ref: '#/components/schemas/Deduction' type: array - type: 'null' title: Deductions description: The deductions of the Employee examples: - company_deduction: '77.57' employee_deduction: '27.22' name: Social Security taxes: anyOf: - items: $ref: '#/components/schemas/Tax' type: array - type: 'null' title: Taxes description: The taxes of the Employee examples: - amount: '175.22' name: California State Income Tax type: object required: - id - remote_id - modified_at - custom_fields - employee - payroll_run - gross_pay - net_pay - start_date - end_date - check_date - earnings - deductions - taxes title: HrisEmployeePayrollRun description: The EmployeePayrollRun object is used to represent an employee's pay statement for a specific payroll run. securitySchemes: HTTPBearer: type: http scheme: bearer