Git Product home page Git Product logo

kimaidotnet's Introduction

KimaiDotNet

This repo is archived, please see KimaiDotNet

A client library for the Kimai Time Tracking API.

Documentation for API Endpoints

All URIs are relative to https://localhost

Class Method HTTP request Description
ActivityApi ApiActivitiesGet GET /api/activities Returns a collection of activities
ActivityApi ApiActivitiesIdGet GET /api/activities/{id} Returns one activity
ActivityApi ApiActivitiesIdMetaPatch PATCH /api/activities/{id}/meta Sets the value of a meta-field for an existing activity
ActivityApi ApiActivitiesIdPatch PATCH /api/activities/{id} Update an existing activity
ActivityApi ApiActivitiesIdRatesGet GET /api/activities/{id}/rates Returns a collection of all rates for one activity
ActivityApi ApiActivitiesIdRatesPost POST /api/activities/{id}/rates Adds a new rate to an activity
ActivityApi ApiActivitiesIdRatesRateIdDelete DELETE /api/activities/{id}/rates/{rateId} Deletes one rate for an activity
ActivityApi ApiActivitiesPost POST /api/activities Creates a new activity
CustomerApi ApiCustomersGet GET /api/customers Returns a collection of customers
CustomerApi ApiCustomersIdGet GET /api/customers/{id} Returns one customer
CustomerApi ApiCustomersIdMetaPatch PATCH /api/customers/{id}/meta Sets the value of a meta-field for an existing customer
CustomerApi ApiCustomersIdPatch PATCH /api/customers/{id} Update an existing customer
CustomerApi ApiCustomersIdRatesGet GET /api/customers/{id}/rates Returns a collection of all rates for one customer
CustomerApi ApiCustomersIdRatesPost POST /api/customers/{id}/rates Adds a new rate to a customer
CustomerApi ApiCustomersIdRatesRateIdDelete DELETE /api/customers/{id}/rates/{rateId} Deletes one rate for an customer
CustomerApi ApiCustomersPost POST /api/customers Creates a new customer
DefaultApi ApiConfigI18nGet GET /api/config/i18n Returns the user specific locale configuration
DefaultApi ApiConfigTimesheetGet GET /api/config/timesheet Returns the timesheet configuration
DefaultApi ApiPingGet GET /api/ping A testing route for the API
DefaultApi ApiVersionGet GET /api/version Returns information about the Kimai release
ProjectApi ApiProjectsGet GET /api/projects Returns a collection of projects.
ProjectApi ApiProjectsIdGet GET /api/projects/{id} Returns one project
ProjectApi ApiProjectsIdMetaPatch PATCH /api/projects/{id}/meta Sets the value of a meta-field for an existing project
ProjectApi ApiProjectsIdPatch PATCH /api/projects/{id} Update an existing project
ProjectApi ApiProjectsIdRatesGet GET /api/projects/{id}/rates Returns a collection of all rates for one project
ProjectApi ApiProjectsIdRatesPost POST /api/projects/{id}/rates Adds a new rate to an project
ProjectApi ApiProjectsIdRatesRateIdDelete DELETE /api/projects/{id}/rates/{rateId} Deletes one rate for an project
ProjectApi ApiProjectsPost POST /api/projects Creates a new project
TagApi ApiTagsGet GET /api/tags Fetch all existing tags
TagApi ApiTagsIdDelete DELETE /api/tags/{id} Delete a tag
TagApi ApiTagsPost POST /api/tags Creates a new tag
TeamApi ApiTeamsGet GET /api/teams Fetch all existing teams
TeamApi ApiTeamsIdActivitiesActivityIdDelete DELETE /api/teams/{id}/activities/{activityId} Revokes access for an activity from a team
TeamApi ApiTeamsIdActivitiesActivityIdPost POST /api/teams/{id}/activities/{activityId} Grant the team access to an activity
TeamApi ApiTeamsIdCustomersCustomerIdDelete DELETE /api/teams/{id}/customers/{customerId} Revokes access for a customer from a team
TeamApi ApiTeamsIdCustomersCustomerIdPost POST /api/teams/{id}/customers/{customerId} Grant the team access to a customer
TeamApi ApiTeamsIdDelete DELETE /api/teams/{id} Delete a team
TeamApi ApiTeamsIdGet GET /api/teams/{id} Returns one team
TeamApi ApiTeamsIdMembersUserIdDelete DELETE /api/teams/{id}/members/{userId} Removes a member from the team
TeamApi ApiTeamsIdMembersUserIdPost POST /api/teams/{id}/members/{userId} Add a new member to a team
TeamApi ApiTeamsIdPatch PATCH /api/teams/{id} Update an existing team
TeamApi ApiTeamsIdProjectsProjectIdDelete DELETE /api/teams/{id}/projects/{projectId} Revokes access for a project from a team
TeamApi ApiTeamsIdProjectsProjectIdPost POST /api/teams/{id}/projects/{projectId} Grant the team access to a project
TeamApi ApiTeamsPost POST /api/teams Creates a new team
TimesheetApi ApiTimesheetsActiveGet GET /api/timesheets/active Returns the collection of active timesheet records
TimesheetApi ApiTimesheetsGet GET /api/timesheets Returns a collection of timesheet records
TimesheetApi ApiTimesheetsIdDelete DELETE /api/timesheets/{id} Delete an existing timesheet record
TimesheetApi ApiTimesheetsIdDuplicatePatch PATCH /api/timesheets/{id}/duplicate Duplicates an existing timesheet record
TimesheetApi ApiTimesheetsIdExportPatch PATCH /api/timesheets/{id}/export Switch the export state of a timesheet record to (un-)lock it
TimesheetApi ApiTimesheetsIdGet GET /api/timesheets/{id} Returns one timesheet record
TimesheetApi ApiTimesheetsIdMetaPatch PATCH /api/timesheets/{id}/meta Sets the value of a meta-field for an existing timesheet.
TimesheetApi ApiTimesheetsIdPatch PATCH /api/timesheets/{id} Update an existing timesheet record
TimesheetApi ApiTimesheetsIdRestartPatch PATCH /api/timesheets/{id}/restart Restarts a previously stopped timesheet record for the current user
TimesheetApi ApiTimesheetsIdStopPatch PATCH /api/timesheets/{id}/stop Stops an active timesheet record
TimesheetApi ApiTimesheetsPost POST /api/timesheets Creates a new timesheet record
TimesheetApi ApiTimesheetsRecentGet GET /api/timesheets/recent Returns the collection of recent user activities
UserApi ApiUsersGet GET /api/users Returns the collection of all registered users
UserApi ApiUsersIdGet GET /api/users/{id} Return one user entity
UserApi ApiUsersIdPatch PATCH /api/users/{id} Update an existing user
UserApi ApiUsersMeGet GET /api/users/me Return the current user entity
UserApi ApiUsersPost POST /api/users Creates a new user

Documentation for Models

Documentation for Authorization

apiToken

  • Type: API key
  • API key parameter name: X-AUTH-TOKEN
  • Location: HTTP header

apiUser

  • Type: API key
  • API key parameter name: X-AUTH-USER
  • Location: HTTP header

kimaidotnet's People

Contributors

markzither avatar

Stargazers

Thaabiet Salaam avatar  avatar

Watchers

James Cloos avatar  avatar  avatar

kimaidotnet's Issues

Create and organization and split the repo

The API client and office Add-ins would live better in separate repos for keeping the build and versioning of each simple.

  • Check if using the Kimai name is OK
  • Create an Org
  • Move the repo to the org
  • Split to repo to API client and Office Add-Ins

Multiple activities with the same name cause a crash

The names of activities and projects are not unique, this means calls to get activities and projects by name can throw exceptions due to multiple results being found when there should be only 1.

  • Activities

  • Projects

Add cascading validation on the customer, project and activity columns

Currently invalid combinations of customer, project and activity can be selected. once the customer is selected projects should be filtered.

-[ ] Add hidden sheets for settings ranges for data validation
-[ ] Enhance on change events to trigger the customer selection to filter the Projects

Read calendar entries into spreadsheet

  • use Microsoft.Exchange.WebServices to connect to exchange
  • fix tls issues with System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;
  • read calendar entries
  • read repeating calendar entries
  • write entries to spreadsheet
  • Create settings screen to handle server name, username and password
  • Create settings screen for mapping event colour/category to project/activity

https://docs.microsoft.com/en-us/exchange/client-developer/exchange-web-services/how-to-get-appointments-and-meetings-by-using-ews-in-exchange

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.