### GET /api/v1/cpus Source: https://api-doc.tanss.de/combined.yaml Gets a list of all cpus ```markdown ### Responses #### 200 - list of all cpus - **meta** (meta) - **content** (array (schema)) Array items: schema ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/cpus" ``` ``` -------------------------------- ### GET /api/v1/os Source: https://api-doc.tanss.de/combined.yaml Gets a list of all operating systems ```markdown ### Responses #### 200 - list of all operating systems - **meta** (meta) - **content** (array (schema)) Array items: schema ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/os" ``` ``` -------------------------------- ### GET /api/v1/hddTypes Source: https://api-doc.tanss.de/combined.yaml Gets a list of all hdd types ```markdown ### Responses #### 200 - list of all hdd types - **meta** (meta) - **content** (array (schema)) Array items: schema ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/hddTypes" ``` ``` -------------------------------- ### POST /api/v1/login Source: https://api-doc.tanss.de/combined.yaml A successful login contains two tokens, the apiToken (apiKey) and the refeshToken (refresh). The apiToken will expire after 4 hours and the refreshToken is valid for 5 days. Every request to the API must use one of these tokens in the http-header (for example ("apiToken" -> "Bearer ...";), only with the apiToken will you receive the requested resource. If the refreshToken is used, you will get a new apiToken and refreshToken. You can use every route apart from /login and /user/login to get a new pair of tokens.The response to this request looks similar to a usual login. ```markdown ### Request Body **Content-Type:** application/json - **username** (string): username / login name (example: "sb") - **password** (string): passwort for this user (example: "secret password") - **token** (string): if a two-factor-auth is used, give the token here (example: "") ### Responses #### 200 - successful login attempt #### 403 - unsuccessful login attempt ### Example Usage ```bash curl -X POST "https://api.example.com/api/v1/login" \ -H "Content-Type: application/json" \ -d '{ "username": "sb", "password": "secret password", "token": "" }' ``` ``` -------------------------------- ### GET /api/v1/components/types Source: https://api-doc.tanss.de/combined.yaml Gets a list of component types ```markdown ### Responses #### 200 - component type list - **meta** (meta) - **content** (array (object)) Array items: - **id** (integer): id of the component type (example: 3) - **type** (string): name of the component type (example: "Festplatte") - **shortName** (string): short name of the component type (example: "HDD") - **shown** (boolean): if false, this type won't be shown in the select field (meaning its an inactive type) #### 403 - response ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/components/types" ``` ``` -------------------------------- ### GET /api/v1/services Source: https://api-doc.tanss.de/combined.yaml Gets a list of all defined services ```markdown ### Responses #### 200 - list of services response - **meta** (meta) - **content** (array (schema)) Array items: schema #### 403 - response ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/services" ``` ``` -------------------------------- ### GET /api/v1/companyCategories Source: https://api-doc.tanss.de/combined.yaml Gets a list of all categories ```markdown ### Responses #### 200 - category list - **meta** (meta) - **content** (array (items)) Array items: items ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/companyCategories" ``` ``` -------------------------------- ### GET /api/v1/offers/templates Source: https://api-doc.tanss.de/combined.yaml This route gets a list of all offer termplates ```markdown ### Responses #### 200 - list of offer templates - **meta** (meta) - **content** (array (object)) Array items: - **id** (integer): id of the offer template (example: 1) - **name** (string): name of the offer template (example: "Angebots-Vorlage für TANSS-Angebote") - **creationDate** (integer): timestamp of the creation of this offer template (example: 1573479013) - **createdByEmployeeId** (integer): id of the employee who has created this offer template (example: 2) - **previousId** (integer): if the offer template is a "newer" version of another template, the old template (pervious id) goes here - **validInDays** (integer): you can define here how long (in days) a generated offer will be valid ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/offers/templates" ``` ``` -------------------------------- ### GET /api/v1/os/{id} Source: https://api-doc.tanss.de/combined.yaml Gets a specific operating system ```markdown ### Parameters - **id** (integer, path, required): Id of the operating system ### Responses #### 200 - operating systems - **meta** (meta) - **content** (schema) ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/os/{id}" ``` ``` -------------------------------- ### GET /api/v1/ticketBoard/project/{id} Source: https://api-doc.tanss.de/combined.yaml Gets a ticket board from a project ```markdown ### Parameters - **id** (integer, path, required): Project id ### Responses #### 200 - ticket board - **meta** (meta) - **content** (content) ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/ticketBoard/project/{id}" ``` ``` -------------------------------- ### GET /api/v1/ticketBoard/project/globalPanels Source: https://api-doc.tanss.de/combined.yaml Gets all global ticket board panels ```markdown ### Responses #### 200 - list of global panels - **meta** (meta) - **content** (array (content)) Array items: content ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/ticketBoard/project/globalPanels" ``` ``` -------------------------------- ### GET /api/v1/tickets/projects Source: https://api-doc.tanss.de/combined.yaml This route gets a list of all projects ```markdown ### Responses #### 200 - response ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/tickets/projects" ``` ``` -------------------------------- ### GET /api/erp/v1/companyCategories Source: https://api-doc.tanss.de/combined.yaml Gets a list of all company categories ```markdown ### Responses #### 200 - company category list - **meta** (meta) - **content** (array (union)) Array items: - **id** (integer): id of the company category (example: 1) - **name** (string): name of the company category (example: "Regionen") - **types** (array (object)): all types within this category Array items: - **id** (integer): id of the company type (example: 41) - **name** (string): name of the company type (example: "Region Süd") - **categoryId** (integer): id of the category for this type (example: 2) - **categoryName** (string): name of the category for this type (example: "Regionale Gliederung") - **icon** (string): if this company type has an icon, here the name is given (example: "region-sued.jpg") - **hidden** (boolean): if true, the company type is hidden ### Example Usage ```bash curl -X GET "https://api.example.com/api/erp/v1/companyCategories" ``` ``` -------------------------------- ### GET /api/v1/ticketBoard/panel Source: https://api-doc.tanss.de/combined.yaml Gets an empty ticket board panel ```markdown ### Parameters - **mode** (string, query, optional): If mode = "edit" you get all possible employees, departments, tags, ticket types and tickets status which can be assigned ### Responses #### 200 - ticket board retrieved - **meta** (meta) - **content** (object): Ticket board panel - **id** (integer): Panel id - **name** (string): Panel name - **projectId** (integer): Panel project id - **employeeId** (integer): Panel employee id - **panelType** (string (DEFAULT|PROJECT)): Panel type ("DEFAULT"|"PROJECT") - **registerType** (string (NONE|COMPANY|EMPLOYEE|DEPARTMENT|TAG|TICKET_TYPE|TICKET_STATUS|PROJECT_PHASE)): Register type ("NONE"|"COMPANY"|"EMPLOYEE"|"DEPARTMENT"|"TAG"|"TICKET_TYPE"|"TICKET_STATUS"|"PROJECT_PHASE") - **includeProjects** (boolean): Include project tickets - **includeSubTickets** (boolean): Include sub tickets - **includeWaitingStates** (boolean): Include tickets with waiting status - **visibility** (string (ONLY_FOR_MYSELF|EVERYBODY)): Panel visibility ("ONLY_FOR_MYSELF"|"EVERYBODY") - **companies** (array (object)): Array of panel companies Array items: - **panelId** (integer): Panel id - **companyId** (integer): Company id - **employees** (array (object)): Array of panel employees Array items: - **panelId** (integer): Panel id - **employeeId** (integer): Employee id - **departments** (array (object)): Array of panel departments Array items: - **panelId** (integer): Panel id - **departmentId** (integer): Department id - **tags** (array (object)): Array of panel tags Array items: - **panelId** (integer): Panel id - **tagId** (integer): Tag id - **ticketTypes** (array (object)): Array of panel ticket types Array items: - **panelId** (integer): Panel id - **typeId** (integer): Type id - **ticketStatus** (array (object)): Array of panel ticket status Array items: - **panelId** (integer): Panel id - **statusId** (integer): Status id ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/ticketBoard/panel?mode=string" ``` ``` -------------------------------- ### GET /api/v1/softwarelicenses/{id} Source: https://api-doc.tanss.de/combined.yaml API endpoint for GET /api/v1/softwarelicenses/{id} ```markdown ### Parameters - **id** (integer, path, required): id of the software license to get ### Responses #### 200 - a single software - **meta** (meta) - **content** (items) ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/softwarelicenses/{id}" ``` ``` -------------------------------- ### GET /api/v1/tags/assignment Source: https://api-doc.tanss.de/combined.yaml Gets alist of all tags who are assigned to an entity (for example ticket). Must be technician/freelancer and have access to the assignment! ```markdown ### Parameters - **linkTypeId** (integer, query, required): linkType of the assignment - **linkId** (integer, query, required): id of the assignment ### Responses #### 200 - list of assigned tags - **meta** (meta) - **content** (array (content)) Array items: content ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/tags/assignment?linkTypeId=0&linkId=0" ``` ``` -------------------------------- ### POST /api/v1/os Source: https://api-doc.tanss.de/combined.yaml Creates a new operating system ```markdown ### Request Body **Content-Type:** application/json - **id** (integer): id of the os - **name** (string): name of the os (example: "macOs monterey") - **serverOperatingSystem** (boolean): define if this os is only to be used for servers (example: false) - **active** (boolean): define if this os is still active/used (example: true) - **articleNumber** (string): (optional) article number used in erp (example: "") ### Responses #### 201 - os was succesfully created - **meta** (meta) - **content** (schema) ### Example Usage ```bash curl -X POST "https://api.example.com/api/v1/os" \ -H "Content-Type: application/json" \ -d '{ "id": "0", "name": "macOs monterey", "serverOperatingSystem": false, "active": true, "articleNumber": "" }' ``` ``` -------------------------------- ### POST /api/v1/cpus Source: https://api-doc.tanss.de/combined.yaml Creates a new cpu ```markdown ### Request Body **Content-Type:** application/json - **id** (integer): id of the cpu - **name** (string): name/type of the cpu (example: "Intel 486 DX/33") ### Responses #### 201 - cpu was succesfully created - **meta** (meta) - **content** (schema) ### Example Usage ```bash curl -X POST "https://api.example.com/api/v1/cpus" \ -H "Content-Type: application/json" \ -d '{ "id": "0", "name": "Intel 486 DX/33" }' ``` ``` -------------------------------- ### GET /api/v1/tags/assignment/log Source: https://api-doc.tanss.de/combined.yaml Gets alist of all tag logs to an entity (for example ticket). Here you can see when tags habe been assigned or removed. Must be technician/freelancer and have access to the assignment! ```markdown ### Parameters - **linkTypeId** (integer, query, required): linkType of the assignment - **linkId** (integer, query, required): id of the assignment ### Responses #### 200 - list of assigned tags - **meta** (meta) - **content** (array (object)) Array items: - **id** (integer) - **date** (integer): date of the log entry (example: 1574938865) - **employeeId** (integer): employee who has done the log entry (example: 2) - **logType** (string (TAG_ASSIGNED|TAG_REMOVED)) ("TAG_ASSIGNED"|"TAG_REMOVED") - **linkTypeId** (integer): linkType of the assignment (example: 11) - **linkId** (integer): id of the assignment (example: 123456) ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/tags/assignment/log?linkTypeId=0&linkId=0" ``` ``` -------------------------------- ### GET /api/v1/timestamps/statistics Source: https://api-doc.tanss.de/combined.yaml gets the timestamp infos for a given time period. Also extends misc. statistical values to the response, for example infos about documented support, vacation, illness or absences. ```markdown ### Parameters - **from** (integer, query, optional): timestamp of start of period. if omitted,the beginning of the current day will be used - **till** (integer, query, optional): timestamp of end of period. if omitted,the end of the current day will be used - **employeeIds** (string, query, optional): id of all employees of whom the statistics shall be generated (comma sperated). Important you must have the permission to view the statistics for this employee ### Responses #### 200 - a list of timestamp info objects (with statistical values) - **meta** (meta) - **content** (array (union)) Array items: - **employeeId** (integer): id of the employee - **date** (string (date)): day in the format YYYY-mm-dd - **weekDay** (weekDay) - **workingTimeModelId** (integer): id of the working time model. Infos are stored in the "list properties" - "workingTimeModels" - (ID) - "extras" - "model" - **timestamps** (array (items)): A list of all timestamps of the given day Array items: items - **types** (object): a list of timestamp periods, grouped by the timestamp type. The key is the TimestampType, the value is a list of TimestampPeriods (example: {"WORK":{"begin":1564489645,"end":1564497940,"seconds":8295,"state":"PAUSED"}}) - **history** (array (object)): history of all timestamp changes of this employee / day Array items: - **id** (integer): id of the history log entry - **timestampId** (integer): id of the timestamp which this history entry is for - **date** (integer): timestamp when the change occured - **changeByUserId** (integer): id of the user which did this change - **fromState** (string (ON|OFF|PAUSE_START|PAUSE_END)): Determines the state for the timestamp (i.e. on, off) ("ON"|"OFF"|"PAUSE_START"|"PAUSE_END") - **fromType** (string (WORK|INHOUSE|ERRAND|VACATION|ILLNESS|ABSENCE_PAID|ABSENCE_UNPAID|OVERTIME|DOCUMENTED_SUPPORT)): Determines the type for the timestamp (i.e. work) ("WORK"|"INHOUSE"|"ERRAND"|"VACATION"|"ILLNESS"|"ABSENCE_PAID"|"ABSENCE_UNPAID"|"OVERTIME"|"DOCUMENTED_SUPPORT") - **fromDate** (integer) - **toState** (fromState) - **toType** (fromType) - **toDate** (integer): new timestamp (is 0 if the entry was deleted) - **historyType** (string (CREATED|UPDATED|DELETED)): describes the "type" of a history entry ("CREATED"|"UPDATED"|"DELETED") - **dayClosing** (object): Describes a day closing of a timestamp statistic. Here, all values are persisted into the database with infos about working time, vacation, documented supports and the balance for this day. - **employeeId** (integer): id of the employee for this day closing - **date** (string (date)): day for this day closing (YYYY-mm-dd) - **totalTimestampWorkTime** (integer): Number of total minutes of all WORK timstamp periods for this day - **paidAbsences** (integer): Number of total minutes of paid absences (= vacation, illness, overtime and paid absences) - **unpaidAbsences** (integer): Number of total minutes of unpaid absences (= unpaid absences) - **documentedSupport** (integer): Number of total minutes of all documented supportd - **workingTime** (integer): The number of minutes, the employee has to work on this day (based on his working time model) - **workingTimeCleaned** (integer): Subtracts the "workingTime" with the minutes of "paid absences", thus returning the "effective" working time the employee has to work - **totalTime** (integer): Cumulating the "totalTimestampWorkTime", "paidAbsences" and "unpaidAbsences" - **documentedPercentage** (integer): a ration between the documented supports to the "WORK" timestamps - **balance** (integer): returns the effective balance for this account (= totalTime - workingTimeCleaned) - **completedByEmployeeId** (integer): the id of the employee who has approved the day - **completedOnDate** (integer): the timestamp, when the employee has approved the day closing - **totalBalance** (integer): the total balance of all previous days accumulated, plus the balance of the current day - **totalBalanceBeforeTimeframe** (integer): the total balance of all previous -not shown- days accumulated - **editMode** (string (NONE|MAY_REQUEST|DIRECT_ACCESS)): describes how a timestamp was (or may be) edited * NONE = may not be edited * MAY_REQUEST = user may only request changes * DIRECT_ACCESS = timestamps may be modified directyl ("NONE"|"MAY_REQUEST"|"DIRECT_ACCESS") - **changesRequested** (array (object)): if any change requests are present for this user / day, they are given here Array items: - **id** (integer) - **employeeId** (integer): id of the employee - **date** (integer): date - **state** (fromState) - **type** (fromType) ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/timestamps/statistics?from=0&till=0&employeeIds=string" ``` ``` -------------------------------- ### PUT /api/v1/components Source: https://api-doc.tanss.de/combined.yaml Gets a list of components ```markdown ### Request Body **Content-Type:** application/json - **componentTypeId** (integer): id of the component type to be filtered - **pcId** (integer): if only components of a given pc shall be displayed - **peripheryId** (integer): if only components of a given periphery shall be displayed - **builtInFilter** (string (NOT_BUILT_IN_COMPONENTS|COMPONENTS_IN_PCS|COMPONENTS_IN_PERIPHERIES)): filter settings for "built in" state of the component (i.e. only built into pcs, periphery) ("NOT_BUILT_IN_COMPONENTS"|"COMPONENTS_IN_PCS"|"COMPONENTS_IN_PERIPHERIES") ### Responses #### 200 - component list response - **meta** (meta) - **content** (array (content)) Array items: content #### 403 - response ### Example Usage ```bash curl -X PUT "https://api.example.com/api/v1/components" \ -H "Content-Type: application/json" \ -d '{ "componentTypeId": "0", "pcId": "0", "peripheryId": "0", "builtInFilter": "NOT_BUILT_IN_COMPONENTS" }' ``` ``` -------------------------------- ### POST /api/erp/v1/customers Source: https://api-doc.tanss.de/combined.yaml ```xml KUNDENNUMMER IN-/AKTIV | 0 = aktiv , 1 = inaktiv INTERNE INFO IN DEN FIRMENSTAMMDATEN VERKAUFER MATCHCODE FAHRT-KM FAHRT-DAUER IN MINUTEN NAME DER ZONE STANDARDTYP | z = Zone , k = Kilometer FIRMENKATEGORIE 1 FIRMENKATEGORIE 2 FIRMENKATEGORIE 3 KUNDENNAME KUNDENNAME ZEILE ZWEI STRASSE PLZ ORT LAND WEBSEITE URL KUNDENNUMMER MITARBEITERNUMMER FUNKTION TELEFON 1 TELEFON 2 FAX EMAIL ANREDE | Standard = 1 Herr , 2 Frau VORNAME NACHNAME IN-/AKTIV | 0 = aktiv , 1 = inaktiv MOBIL PRIVAT TEL GEBURTSTAG | 0000-00-00T00:00:00 BEMERKUNG ``` ```markdown ### Parameters - **apiToken** (string, header, required): ERP Api-Token ### Request Body **Content-Type:** application/json - Array of object - **customer** (string): Customer-XML Base64 encoded (example: " // Base64 encoded") ### Responses #### 200 - OK - Array of object - **status** (string) (example: "OK") - **customer** (string) (example: " // Base64 encoded") ### Example Usage ```bash curl -X POST "https://api.example.com/api/erp/v1/customers" \ -H "Content-Type: application/json" \ -d '[ { "customer": " // Base64 encoded" } ]' ``` ``` -------------------------------- ### POST /api/v1/components Source: https://api-doc.tanss.de/combined.yaml Creates a component ```markdown ### Request Body **Content-Type:** application/json ### Responses #### 201 - component was succesfully inserted - **meta** (meta) - **content** (content) #### 403 - response ### Example Usage ```bash curl -X POST "https://api.example.com/api/v1/components" \ -H "Content-Type: application/json" \ -d '"value"' ``` ``` -------------------------------- ### POST /api/v1/offers/templates Source: https://api-doc.tanss.de/combined.yaml Creates a new offer template ```markdown ### Request Body **Content-Type:** application/json ### Responses #### 201 - offer template was succesfully created - **meta** (meta) - **content** (items) ### Example Usage ```bash curl -X POST "https://api.example.com/api/v1/offers/templates" \ -H "Content-Type: application/json" \ -d '"value"' ``` ``` -------------------------------- ### GET /api/v1/manufacturers Source: https://api-doc.tanss.de/combined.yaml Gets a list of all manufacturers ```markdown ### Responses #### 200 - list of all manufacturer - **meta** (meta) - **content** (array (schema)) Array items: schema ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/manufacturers" ``` ``` -------------------------------- ### POST /api/v1/pcs Source: https://api-doc.tanss.de/combined.yaml Creates a pc or server. Will also store attached ip address information or guarantee. ```markdown ### Request Body **Content-Type:** application/json ### Responses #### 201 - pc/server was succesfully inserted - **meta** (meta) - **content** (content) #### 403 - response ### Example Usage ```bash curl -X POST "https://api.example.com/api/v1/pcs" \ -H "Content-Type: application/json" \ -d '"value"' ``` ``` -------------------------------- ### GET /api/v1/softwarelicenses/types Source: https://api-doc.tanss.de/combined.yaml API endpoint for GET /api/v1/softwarelicenses/types ```markdown ### Responses #### 200 - a list of all software license types - **meta** (meta) - **content** (array (object)) Array items: - **id** (integer (int32)): Unique identifier of the software license type. - **manufacturerNumber** (string): Manufacturer article number. (example: "MN-12345") - **name** (string): Name of the software license type. (example: "Antivirus Pro") - **comment** (string): Comment or description of the software license type. - **previousId** (integer (int32)): Reference to a previous software license type. - **active** (boolean): Indicates whether the software license type is active. - **standardRunningTime** (integer (int32)): Default running time of the license (e.g. in months). - **standardRenew** (boolean): Indicates whether the license is renewed by default. - **standardMaxNumberOfInstallations** (integer (int32)): Default maximum number of installations. - **articleNumber** (string): Internal article number. - **path** (array (string)): Hierarchical path of the software license type. (example: ["Software","Security","Antivirus"]) ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/softwarelicenses/types" ``` ``` -------------------------------- ### GET /api/v1/vacationRequests/planningAdditionalTypes Source: https://api-doc.tanss.de/combined.yaml API endpoint for GET /api/v1/vacationRequests/planningAdditionalTypes ```markdown ### Responses #### 200 - a list of absence/custom - **meta** (meta) - **content** (array (object)) Array items: - **id** (integer): if of this entry - **name** (string): displayed name for this absence type / custom type (example: "Home-Office") - **charged** (boolean): shall this absence type be charged? - **type** (string (ABSENCE|CUSTOM)): determines the type - either ABSENCE or CUSTOM (example: "CUSTOM") ("ABSENCE"|"CUSTOM") - **backgroundColor** (string): background color that shall be used (only for custom types) - **fontColor** (string): font color that shall be used (only for custom types) - **active** (boolean): is this type still active (is displayed in forms)? ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/vacationRequests/planningAdditionalTypes" ``` ``` -------------------------------- ### POST /api/v1/hddTypes Source: https://api-doc.tanss.de/combined.yaml Creates a new hdd type ```markdown ### Request Body **Content-Type:** application/json - **id** (integer): id of the hdd type - **name** (string): name/type of the hdd type (example: "S-ATA") ### Responses #### 201 - hdd type was successfully created - **meta** (meta) - **content** (schema) ### Example Usage ```bash curl -X POST "https://api.example.com/api/v1/hddTypes" \ -H "Content-Type: application/json" \ -d '{ "id": "0", "name": "S-ATA" }' ``` ``` -------------------------------- ### GET /api/v1/companyCategories/types Source: https://api-doc.tanss.de/combined.yaml Gets a list of all company types ```markdown ### Responses #### 200 - company type list - **meta** (meta) - **content** (array (object)) Array items: - **id** (integer): id of the company type (example: 41) - **name** (string): name of the company type (example: "Region Süd") - **categoryId** (integer): id of the category for this type (example: 2) - **categoryName** (string): name of the category for this type (example: "Regionale Gliederung") - **icon** (string): if this company type has an icon, here the name is given (example: "region-sued.jpg") - **hidden** (boolean): if true, the company type is hidden ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/companyCategories/types" ``` ``` -------------------------------- ### GET /api/v1/offer/{offerId} Source: https://api-doc.tanss.de/combined.yaml This route gets a detailled view of an offer (including vars and material) ```markdown ### Parameters - **offerId** (integer, path, required): Id of the offer ### Responses #### 200 - offer details - **meta** (meta) - **content** (array (schema)) Array items: schema ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/offer/{offerId}" ``` ``` -------------------------------- ### GET /api/v1/cpus/{id} Source: https://api-doc.tanss.de/combined.yaml Gets a specific cpu ```markdown ### Parameters - **id** (integer, path, required): Id of the cpu ### Responses #### 200 - cpus - **meta** (meta) - **content** (schema) ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/cpus/{id}" ``` ``` -------------------------------- ### GET /api/v1/manufacturers/{id} Source: https://api-doc.tanss.de/combined.yaml Gets a specific manufacturer ```markdown ### Parameters - **id** (integer, path, required): Id of the manufacturer ### Responses #### 200 - manufacturer - **meta** (meta) - **content** (schema) ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/manufacturers/{id}" ``` ``` -------------------------------- ### PUT /api/v1/pcs Source: https://api-doc.tanss.de/combined.yaml Gets a list of pcs or server. ```markdown ### Request Body **Content-Type:** application/json - **companyId** (integer): show only entries of this company - **branches** (string (COMPANY_ONLY|BRANCHES_ONLY|COMPANY_AND_BRANCHES|SPECIFIC_BRANCH)): filter settings for branches ("COMPANY_ONLY"|"BRANCHES_ONLY"|"COMPANY_AND_BRANCHES"|"SPECIFIC_BRANCH") - **active** (string (ACTIVE_ONLY|INACTIVE_ONLY|ACTIVE_AND_INACTIVE)): filter settings for "active" state of the device ("ACTIVE_ONLY"|"INACTIVE_ONLY"|"ACTIVE_AND_INACTIVE") - **osIds** (array (integer)): show only there os ids - **servers** (string (PCS_ONLY|SERVERS_ONLY|SERVERS_AND_PCS)): filter settings for the "server" state ("PCS_ONLY"|"SERVERS_ONLY"|"SERVERS_AND_PCS") ### Responses #### 200 - pc/server list response - **meta** (meta) - **content** (array (content)) Array items: content #### 403 - response ### Example Usage ```bash curl -X PUT "https://api.example.com/api/v1/pcs" \ -H "Content-Type: application/json" \ -d '{ "companyId": "0", "branches": "COMPANY_ONLY", "active": "ACTIVE_ONLY", "osIds": [ "0" ], "servers": "PCS_ONLY" }' ``` ``` -------------------------------- ### API Overview: TANSS API Source: https://api-doc.tanss.de/combined.yaml ## Documentation of the TANSS API. Version: 10.12.0 ```yaml # TANSS API # Version: 10.12.0 ## Documentation of the TANSS API. Version: 10.12.0 # Base URL: Not specified ``` -------------------------------- ### PUT /api/v1/os/{id} Source: https://api-doc.tanss.de/combined.yaml Updates an existing operating system ```markdown ### Parameters - **id** (integer, path, required): Id of the operating system ### Request Body **Content-Type:** application/json ### Responses #### 202 - os was succesfully updated - **meta** (meta) - **content** (schema) ### Example Usage ```bash curl -X PUT "https://api.example.com/api/v1/os/{id}" \ -H "Content-Type: application/json" \ -d '"value"' ``` ``` -------------------------------- ### GET /api/v1/peripheries/types Source: https://api-doc.tanss.de/combined.yaml Gets a list of all periphery types ```markdown ### Responses #### 200 - periphery type list - **meta** (meta) - **content** (array (object)) Array items: - **id** (integer): id of the periphery type (example: 1) - **name** (string): name of the periphery type (example: "Drucker") - **image** (string): icon used when displaying peripheries of this type (example: "drucker.png") #### 403 - response ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/peripheries/types" ``` ``` -------------------------------- ### GET /api/v1/ticketBoard Source: https://api-doc.tanss.de/combined.yaml Gets the ticket board with all panels ```markdown ### Responses #### 200 - ticket board - **meta** (meta) - **content** (object): Ticket board - **panels** (array (object)): Array of panels Array items: - **id** (integer): Panel id - **name** (string): Panel name - **projectId** (integer): Panel project id - **employeeId** (integer): Panel employee id - **panelType** (string (DEFAULT|PROJECT)): Panel type ("DEFAULT"|"PROJECT") - **registerType** (string (NONE|COMPANY|EMPLOYEE|DEPARTMENT|TAG|TICKET_TYPE|TICKET_STATUS|PROJECT_PHASE)): Register type ("NONE"|"COMPANY"|"EMPLOYEE"|"DEPARTMENT"|"TAG"|"TICKET_TYPE"|"TICKET_STATUS"|"PROJECT_PHASE") - **includeProjects** (boolean): Include project tickets - **includeSubTickets** (boolean): Include sub tickets - **includeWaitingStates** (boolean): Include tickets with waiting status - **visibility** (string (ONLY_FOR_MYSELF|EVERYBODY)): Panel visibility ("ONLY_FOR_MYSELF"|"EVERYBODY") - **companies** (array (object)): Array of panel companies Array items: - **panelId** (integer): Panel id - **companyId** (integer): Company id - **employees** (array (object)): Array of panel employees Array items: - **panelId** (integer): Panel id - **employeeId** (integer): Employee id - **departments** (array (object)): Array of panel departments Array items: - **panelId** (integer): Panel id - **departmentId** (integer): Department id - **tags** (array (object)): Array of panel tags Array items: - **panelId** (integer): Panel id - **tagId** (integer): Tag id - **ticketTypes** (array (object)): Array of panel ticket types Array items: - **panelId** (integer): Panel id - **typeId** (integer): Type id - **ticketStatus** (array (object)): Array of panel ticket status Array items: - **panelId** (integer): Panel id - **statusId** (integer): Status id ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/ticketBoard" ``` ``` -------------------------------- ### GET /api/v1/supportTypes/active Source: https://api-doc.tanss.de/combined.yaml API endpoint for GET /api/v1/supportTypes/active ```markdown ### Responses #### 200 - list of all active support types - **meta** (meta) - **content** (array (items)) Array items: items ### Example Usage ```bash curl -X GET "https://api.example.com/api/v1/supportTypes/active" ``` ```