openapi-directory
Version:
Building & bundling https://github.com/APIs-guru/openapi-directory for easy use from JS
1 lines • 120 kB
JSON
{"openapi":"3.0.0","info":{"description":"API for a tool to craftsmen used to register working hours, material usage and quality assurance. \n# Endpoint\nThe endpoint `https://app.apacta.com/api/v1` should be used to communicate with the API. API access is only allowed with SSL encrypted connection (https).\n# Authentication\nURL query authentication with an API key is used, so appending `?api_key={api_key}` to the URL where `{api_key}` is found within Apacta settings is used for authentication\n# Pagination\nIf the endpoint returns a `pagination` object it means the endpoint supports pagination - currently it's only possible to change pages with `?page={page_number}` but implementing custom page sizes are on the road map.\n\n\n# Search/filter\nIs experimental but implemented in some cases - see the individual endpoints' docs for further explanation.\n# Ordering\nIs currently experimental, but on some endpoints it's implemented on URL querys so eg. to order Invoices by `invoice_number` appending `?sort=Invoices.invoice_number&direction=desc` would sort the list descending by the value of `invoice_number`.\n# Associations\nIs currently implemented on an experimental basis where you can append eg. `?include=Contacts,Projects` to the `/api/v1/invoices/` endpoint to embed `Contact` and `Project` objects directly.\n# Project Files\nCurrently project files can be retrieved from two endpoints. `/projects/{project_id}/files` handles files uploaded from wall posts or forms. `/projects/{project_id}/project_files` allows uploading and showing files, not belonging to specific form or wall post.\n# Errors/Exceptions\n## 422 (Validation)\nWrite something about how the `errors` object contains keys with the properties that failes validation like:\n```\n {\n \"success\": false,\n \"data\": {\n \"code\": 422,\n \"url\": \"/api/v1/contacts?api_key=5523be3b-30ef-425d-8203-04df7caaa93a\",\n \"message\": \"A validation error occurred\",\n \"errorCount\": 1,\n \"errors\": {\n \"contact_types\": [ ## Property name that failed validation\n \"Contacts must have at least one contact type\" ## Message with further explanation\n ]\n }\n }\n }\n```\n## Code examples\nRunning examples of how to retrieve the 5 most recent forms registered and embed the details of the User that made the form, and eventual products contained in the form\n### Swift\n```\n \n```\n### Java\n#### OkHttp\n```\n OkHttpClient client = new OkHttpClient();\n \n Request request = new Request.Builder()\n .url(\"https://app.apacta.com/api/v1/forms?extended=true&sort=Forms.created&direction=DESC&include=Products%2CCreatedBy&limit=5\")\n .get()\n .addHeader(\"x-auth-token\", \"{INSERT_YOUR_TOKEN}\")\n .addHeader(\"accept\", \"application/json\")\n .build();\n \n Response response = client.newCall(request).execute();\n```\n#### Unirest\n```\n HttpResponse<String> response = Unirest.get(\"https://app.apacta.com/api/v1/forms?extended=true&sort=Forms.created&direction=DESC&include=Products%2CCreatedBy&limit=5\")\n .header(\"x-auth-token\", \"{INSERT_YOUR_TOKEN}\")\n .header(\"accept\", \"application/json\")\n .asString();\n```\n### Javascript\n#### Native\n```\n var data = null;\n \n var xhr = new XMLHttpRequest();\n xhr.withCredentials = true;\n \n xhr.addEventListener(\"readystatechange\", function () {\n if (this.readyState === 4) {\n console.log(this.responseText);\n }\n });\n \n xhr.open(\"GET\", \"https://app.apacta.com/api/v1/forms?extended=true&sort=Forms.created&direction=DESC&include=Products%2CCreatedBy&limit=5\");\n xhr.setRequestHeader(\"x-auth-token\", \"{INSERT_YOUR_TOKEN}\");\n xhr.setRequestHeader(\"accept\", \"application/json\");\n \n xhr.send(data);\n```\n#### jQuery\n```\n var settings = {\n \"async\": true,\n \"crossDomain\": true,\n \"url\": \"https://app.apacta.com/api/v1/forms?extended=true&sort=Forms.created&direction=DESC&include=Products%2CCreatedBy&limit=5\",\n \"method\": \"GET\",\n \"headers\": {\n \"x-auth-token\": \"{INSERT_YOUR_TOKEN}\",\n \"accept\": \"application/json\",\n }\n }\n \n $.ajax(settings).done(function (response) {\n console.log(response);\n });\n```\n#### NodeJS (Request)\n```\n var request = require(\"request\");\n\n var options = { method: 'GET',\n url: 'https://app.apacta.com/api/v1/forms',\n qs: \n { extended: 'true',\n sort: 'Forms.created',\n direction: 'DESC',\n include: 'Products,CreatedBy',\n limit: '5' },\n headers: \n { accept: 'application/json',\n 'x-auth-token': '{INSERT_YOUR_TOKEN}' } };\n \n request(options, function (error, response, body) {\n if (error) throw new Error(error);\n \n console.log(body);\n });\n\n```\n### Python 3\n```\n import http.client\n \n conn = http.client.HTTPSConnection(\"app.apacta.com\")\n \n payload = \"\"\n \n headers = {\n 'x-auth-token': \"{INSERT_YOUR_TOKEN}\",\n 'accept': \"application/json\",\n }\n \n conn.request(\"GET\", \"/api/v1/forms?extended=true&sort=Forms.created&direction=DESC&include=Products%2CCreatedBy&limit=5\", payload, headers)\n \n res = conn.getresponse()\n data = res.read()\n \n print(data.decode(\"utf-8\"))\n```\n### C#\n#### RestSharp\n```\n var client = new RestClient(\"https://app.apacta.com/api/v1/forms?extended=true&sort=Forms.created&direction=DESC&include=Products%2CCreatedBy&limit=5\");\n var request = new RestRequest(Method.GET);\n request.AddHeader(\"accept\", \"application/json\");\n request.AddHeader(\"x-auth-token\", \"{INSERT_YOUR_TOKEN}\");\n IRestResponse response = client.Execute(request); \n```\n### Ruby\n```\n require 'uri'\n require 'net/http'\n \n url = URI(\"https://app.apacta.com/api/v1/forms?extended=true&sort=Forms.created&direction=DESC&include=Products%2CCreatedBy&limit=5\")\n \n http = Net::HTTP.new(url.host, url.port)\n http.use_ssl = true\n http.verify_mode = OpenSSL::SSL::VERIFY_NONE\n \n request = Net::HTTP::Get.new(url)\n request[\"x-auth-token\"] = '{INSERT_YOUR_TOKEN}'\n request[\"accept\"] = 'application/json'\n \n response = http.request(request)\n puts response.read_body\n```\n### PHP (HttpRequest)\n```\n <?php\n\n $request = new HttpRequest();\n $request->setUrl('https://app.apacta.com/api/v1/forms');\n $request->setMethod(HTTP_METH_GET);\n \n $request->setQueryData(array(\n 'extended' => 'true',\n 'sort' => 'Forms.created',\n 'direction' => 'DESC',\n 'include' => 'Products,CreatedBy',\n 'limit' => '5'\n ));\n \n $request->setHeaders(array(\n 'accept' => 'application/json',\n 'x-auth-token' => '{INSERT_YOUR_TOKEN}'\n ));\n \n try {\n $response = $request->send();\n \n echo $response->getBody();\n } catch (HttpException $ex) {\n echo $ex;\n }\n```\n### Shell (cURL)\n```\n\n $ curl --request GET --url 'https://app.apacta.com/api/v1/forms?extended=true&sort=Forms.created&direction=DESC&include=Products%2CCreatedBy&limit=5' --header 'accept: application/json' --header 'x-auth-token: {INSERT_YOUR_TOKEN}'\n \n```","title":"Apacta","version":"0.0.1","x-apisguru-categories":["time_management","project_management"],"x-logo":{"url":"https://twitter.com/apactadk/profile_image?size=original"},"x-origin":[{"format":"swagger","url":"http://apidoc.apacta.com/swagger.yaml","version":"2.0"}],"x-providerName":"apacta.com"},"tags":[{"description":"Experimental","name":"TimeEntries"},{"description":"Experimental","name":"TimeEntryIntervals"},{"description":"Experimental","name":"TimeEntryTypes"},{"description":"Experimental","name":"TimeEntryUnitTypes"},{"description":"Experimental","name":"TimeEntryValueTypes"}],"paths":{"/cities":{"get":{"parameters":[{"description":"Used to search for a city with specific zip code","in":"query","name":"zip_code","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/City"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Get list of cities supported in Apacta","tags":["Cities"]}},"/cities/{city_id}":{"get":{"parameters":[{"in":"path","name":"city_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/City"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Get details about one city","tags":["Cities"]}},"/clocking_records":{"get":{"parameters":[{"description":"Used to search for active clocking records","in":"query","name":"active","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/ClockingRecord"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Get a list of clocking records","tags":["ClockingRecords"]},"post":{"requestBody":{"content":{"application/json":{"schema":{"properties":{"checkin_latitude":{"type":"string"},"checkin_longitude":{"type":"string"},"checkout_latitude":{"type":"string"},"checkout_longitude":{"type":"string"},"project_id":{"format":"uuid","type":"string"}},"type":"object"}}},"required":true},"responses":{"201":{"description":"Successfully added clocking record","content":{"application/json":{"schema":{"properties":{"data":{"properties":{"id":{"format":"uuid","type":"string"}},"type":"object"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"422":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorValidation"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Create clocking record for authenticated user","tags":["ClockingRecords"]}},"/clocking_records/checkout":{"post":{"responses":{"201":{"description":"Successfully checked out","content":{"application/json":{"schema":{"properties":{"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"422":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorValidation"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Checkout active clocking record for authenticated user","tags":["ClockingRecords"]}},"/clocking_records/{clocking_record_id}":{"delete":{"parameters":[{"in":"path","name":"clocking_record_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"type":"string"},"type":"array"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Delete a clocking record","tags":["ClockingRecords"]},"get":{"parameters":[{"in":"path","name":"clocking_record_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/ClockingRecord"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"404":{"description":"Clocking record not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Details of 1 clocking_record","tags":["ClockingRecords"]},"put":{"parameters":[{"in":"path","name":"clocking_record_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"type":"object"},"type":"array"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Edit a clocking record","tags":["ClockingRecords"]}},"/companies":{"get":{"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/Company"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Get a list of companies","tags":["Companies"]}},"/companies/{company_id}":{"get":{"parameters":[{"in":"path","name":"company_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Company object","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/Company"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"404":{"description":"Company not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Details of 1 company","tags":["Companies"]}},"/companies/{company_id}/integration_feature_settings":{"get":{"parameters":[{"in":"path","name":"company_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/IntegrationFeatureSetting"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Get a list of integration feature settings","tags":["Companies"]}},"/companies/{company_id}/integration_feature_settings/{integration_feature_setting_id}":{"get":{"parameters":[{"in":"path","name":"company_id","required":true,"schema":{"type":"string"}},{"in":"path","name":"integration_feature_setting_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/IntegrationFeatureSetting"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"404":{"description":"IntegrationFeatureSetting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Show details of 1 integration feature setting","tags":["Companies"]}},"/contact_types":{"get":{"parameters":[{"description":"Search for specific identifier value","in":"query","name":"identifier","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/ContactType"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Get list of contact types supported in Apacta","tags":["ContactTypes"]}},"/contact_types/{contact_type_id}":{"get":{"parameters":[{"in":"path","name":"contact_type_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/ContactType"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Get details about one contact type","tags":["ContactTypes"]}},"/contacts":{"get":{"parameters":[{"description":"Used to search for a contact with a specific name","in":"query","name":"name","required":false,"schema":{"type":"string"}},{"description":"Search for values in CVR field","in":"query","name":"cvr","schema":{"type":"string"}},{"description":"Search for values in EAN field","in":"query","name":"ean","schema":{"type":"string"}},{"description":"Search for values in ERP id field","in":"query","name":"erp_id","schema":{"type":"string"}},{"description":"Used to show only contacts with with one specific `ContactType`","in":"query","name":"contact_type","schema":{"type":"string","format":"uuid"}},{"description":"Used to show only contacts with with one specific `City`","in":"query","name":"city","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/Contact"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Get a list of contacts","tags":["Contacts"]},"post":{"requestBody":{"$ref":"#/components/requestBodies/Contact"},"responses":{"201":{"description":"Successfully added contact","content":{"application/json":{"schema":{"properties":{"data":{"properties":{"id":{"format":"uuid","type":"string"}},"type":"object"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"422":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorValidation"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Add a new contact","tags":["Contacts"]}},"/contacts/{contact_id}":{"delete":{"parameters":[{"in":"path","name":"contact_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"type":"string"},"type":"array"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Delete a contact","tags":["Contacts"]},"get":{"parameters":[{"in":"path","name":"contact_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/Contact"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"404":{"description":"Contact not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Details of 1 contact","tags":["Contacts"]},"put":{"parameters":[{"in":"path","name":"contact_id","required":true,"schema":{"type":"string"}}],"requestBody":{"$ref":"#/components/requestBodies/Contact"},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"type":"object"},"type":"array"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Edit a contact","tags":["Contacts"]}},"/currencies":{"get":{"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/Currency"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Get list of currencies supported in Apacta","tags":["Currencies"]}},"/currencies/{currency_id}":{"get":{"parameters":[{"in":"path","name":"currency_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/Currency"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Get details about one currency","tags":["Currencies"]}},"/employee_hours":{"get":{"parameters":[{"description":"Date formatted as Y-m-d (2016-06-28)","in":"query","name":"date_from","required":true,"schema":{"type":"string"}},{"description":"Date formatted as Y-m-d (2016-06-28)","in":"query","name":"date_to","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"description":"One element per form in the period","items":{"properties":{"form_date":{"description":"Y-m-d formatted","format":"date","type":"string"},"form_id":{"format":"uuid","type":"string"},"project_name":{"type":"string"},"total_hours":{"description":"The amount of hours in seconds","format":"int32","type":"integer"},"working_description":{"description":"Trimmed at 50 characters","type":"string"},"working_description_full":{"description":"Full work description (if available)","type":"string"}},"type":"object"},"type":"array"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Used to retrieve details about the logged in user's hours","tags":["EmployeeHours"]}},"/expense_files":{"get":{"parameters":[{"in":"query","name":"created_by_id","schema":{"type":"string","format":"uuid"}},{"in":"query","name":"expense_id","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/ExpenseFile"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Show list of expense files","tags":["ExpenseFiles"]},"post":{"requestBody":{"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"file":{"type":"string","format":"binary"},"description":{"type":"string"}},"required":["file"]}}}},"responses":{"201":{"description":"Successfully added file","content":{"application/json":{"schema":{"properties":{"data":{"properties":{"id":{"format":"uuid","type":"string"}},"type":"object"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"422":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorValidation"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Add file to expense","tags":["ExpenseFiles"]}},"/expense_files/{expense_file_id}":{"delete":{"parameters":[{"in":"path","name":"expense_file_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"type":"string"},"type":"array"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Delete file","tags":["ExpenseFiles"]},"get":{"parameters":[{"in":"path","name":"expense_file_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"type":"string"},"type":"array"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Show file","tags":["ExpenseFiles"]},"put":{"parameters":[{"in":"path","name":"expense_file_id","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"type":"object"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Edit file","tags":["ExpenseFiles"]}},"/expense_lines":{"get":{"parameters":[{"in":"query","name":"created_by_id","schema":{"type":"string","format":"uuid"}},{"in":"query","name":"currency_id","schema":{"type":"string","format":"uuid"}},{"in":"query","name":"expense_id","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/ExpenseLine"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Show list of expense lines","tags":["ExpenseLines"]},"post":{"requestBody":{"content":{"application/json":{"schema":{"properties":{"buying_price":{"format":"float","type":"number"},"currency_id":{"format":"uuid","type":"string"},"expense_id":{"format":"uuid","type":"string"},"quantity":{"format":"int32","type":"integer"},"selling_price":{"format":"float","type":"number"},"text":{"maxLength":255,"type":"string"}},"type":"object"}}}},"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"properties":{"id":{"format":"uuid","type":"string"}},"type":"object"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"422":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorValidation"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Add line to expense","tags":["ExpenseLines"]}},"/expense_lines/{expense_line_id}":{"delete":{"parameters":[{"in":"path","name":"expense_line_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/ExpenseLine"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Delete expense line","tags":["ExpenseLines"]},"get":{"parameters":[{"in":"path","name":"expense_line_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/ExpenseLine"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Show expense line","tags":["ExpenseLines"]},"put":{"parameters":[{"in":"path","name":"expense_line_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/ExpenseLine"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Edit expense line","tags":["ExpenseLines"]}},"/expenses":{"get":{"parameters":[{"in":"query","name":"created_by_id","schema":{"type":"string","format":"uuid"}},{"in":"query","name":"company_id","schema":{"type":"string","format":"uuid"}},{"in":"query","name":"contact_id","schema":{"type":"string","format":"uuid"}},{"in":"query","name":"project_id","schema":{"type":"string","format":"uuid"}},{"description":"Created after date","in":"query","name":"gt_created","schema":{"type":"string","format":"date"}},{"description":"Created before date","in":"query","name":"lt_created","schema":{"type":"string","format":"date"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/Expense"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Show list of expenses","tags":["Expenses"]},"post":{"requestBody":{"content":{"application/json":{"schema":{"properties":{"contact_id":{"format":"uuid","type":"string"},"currency_id":{"format":"uuid","type":"string"},"delivery_date":{"format":"date","type":"string"},"description":{"maxLength":8192,"type":"string"},"project_id":{"format":"uuid","type":"string"},"reference":{"maxLength":8192,"type":"string"},"short_text":{"maxLength":255,"type":"string"},"supplier_invoice_number":{"maxLength":255,"type":"string"}},"type":"object"}}}},"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"properties":{"id":{"format":"uuid","type":"string"}},"type":"object"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"422":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorValidation"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Add line to expense","tags":["Expenses"]}},"/expenses/{expense_id}":{"delete":{"parameters":[{"in":"path","name":"expense_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/Expense"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Delete expense","tags":["Expenses"]},"get":{"parameters":[{"in":"path","name":"expense_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/Expense"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Show expense","tags":["Expenses"]},"put":{"parameters":[{"in":"path","name":"expense_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/Expense"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Edit expense","tags":["Expenses"]}},"/expenses/{expense_id}/original_files":{"get":{"parameters":[{"in":"path","name":"expense_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"success":{"default":true,"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Show list of all OIOUBL files for the expense","tags":["Expense OIOUBL files"]}},"/expenses/{expense_id}/original_files/{file_id}":{"get":{"parameters":[{"in":"path","name":"expense_id","required":true,"schema":{"type":"string"}},{"in":"path","name":"file_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Show OIOUBL file","tags":["Expense OIOUBL files"]}},"/form_field_types":{"get":{"parameters":[{"description":"Used to filter on the `name` of the form_fields","in":"query","name":"name","required":false,"schema":{"type":"string"}},{"description":"Used to filter on the `identifier` of the form_fields","in":"query","name":"identifier","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/FormFieldType"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Get list of form field types","tags":["FormFieldTypes"]}},"/form_field_types/{form_field_type_id}":{"get":{"parameters":[{"in":"path","name":"form_field_type_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/FormFieldType"},"success":{"type":"boolean"}},"type":"object"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Get details about single `FormField`","tags":["FormFieldTypes"]}},"/form_fields":{"post":{"requestBody":{"content":{"application/json":{"schema":{"properties":{"comment":{"maxLength":8192,"type":"string"},"content_value":{"maxLength":255,"type":"string"},"file_id":{"format":"uuid","type":"string"},"form_field_type_id":{"format":"uuid","type":"string"},"form_id":{"format":"uuid","type":"string"},"form_template_field_id":{"format":"uuid","type":"string"},"placement":{"format":"int32","type":"integer"}},"type":"object"}}}},"responses":{"201":{"description":"Successfully added field","content":{"application/json":{"schema":{"properties":{"data":{"properties":{"id":{"format":"uuid","type":"string"}},"type":"object"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"422":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorValidation"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Add a new field to a `Form`","tags":["FormFields"]}},"/form_fields/{form_field_id}":{"get":{"parameters":[{"in":"path","name":"form_field_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/FormField"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Get details about single `FormField`","tags":["FormFields"]}},"/form_templates":{"get":{"parameters":[{"description":"Used to filter on the `name` of the form_templates","in":"query","name":"name","schema":{"type":"string"}},{"description":"Used to filter on the `identifier` of the form_templates","in":"query","name":"identifier","required":false,"schema":{"type":"string"}},{"description":"Used to filter on the `pdf_template_identifier` of the form_templates","in":"query","name":"pdf_template_identifier","schema":{"type":"string"}},{"description":"Used to filter on the `description` of the form_templates","in":"query","name":"description","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/FormTemplate"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Get array of form_templates for your company","tags":["FormTemplates"]}},"/form_templates/{form_template_id}":{"get":{"parameters":[{"in":"path","name":"form_template_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/FormTemplate"},"success":{"type":"boolean"}},"type":"object"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorNotFound"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"View one form template","tags":["FormTemplates"]}},"/forms":{"get":{"parameters":[{"description":"Used to have extended details from the forms from the `Form`'s `FormFields`","in":"query","name":"extended","schema":{"type":"string","enum":[true,false]}},{"description":"Used in conjunction with `date_to` to only show forms within these dates - format like `2016-28-05`","in":"query","name":"date_from","schema":{"type":"string","format":"Y-m-d"}},{"description":"Used in conjunction with `date_from` to only show forms within these dates - format like `2016-28-30`","in":"query","name":"date_to","schema":{"type":"string","format":"Y-m-d"}},{"description":"Used to filter on the `project_id` of the forms","in":"query","name":"project_id","schema":{"type":"string","format":"uuid"}},{"description":"Used to filter on the `created_by_id` of the forms","in":"query","name":"created_by_id","required":false,"schema":{"type":"string"}},{"description":"Used to filter on the `form_template_id` of the forms","in":"query","name":"form_template_id","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/Form"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Retrieve array of forms","tags":["Forms"]},"post":{"description":"Used to add a form into the system","requestBody":{"content":{"application/json":{"schema":{"properties":{"form_template_id":{"format":"uuid","type":"string"},"project_id":{"format":"uuid","type":"string"}},"required":["project_id","form_template_id"],"type":"object"}}}},"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"properties":{"id":{"format":"uuid","type":"string"}},"type":"object"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"422":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorValidation"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Add new form","tags":["Forms"]}},"/forms/{form_id}":{"delete":{"description":"You can only delete the forms that you've submitted yourself","parameters":[{"in":"path","name":"form_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Delete a form","tags":["Forms"]},"get":{"parameters":[{"in":"path","name":"form_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/Form"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"View form","tags":["Forms"]},"put":{"parameters":[{"in":"path","name":"form_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Edit a form","tags":["Forms"]}},"/invoice_lines":{"get":{"parameters":[{"in":"query","name":"invoice_id","schema":{"type":"string","format":"uuid"}},{"in":"query","name":"product_id","schema":{"type":"string","format":"uuid"}},{"in":"query","name":"user_id","schema":{"type":"string","format":"uuid"}},{"in":"query","name":"name","schema":{"type":"string"}},{"in":"query","name":"discount_text","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/InvoiceLine"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"View list of invoice lines","tags":["InvoiceLines"]},"post":{"requestBody":{"$ref":"#/components/requestBodies/InvoiceLine"},"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"properties":{"id":{"format":"uuid","type":"string"}},"type":"object"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"422":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorValidation"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Add invoice","tags":["InvoiceLines"]}},"/invoice_lines/{invoice_line_id}":{"delete":{"parameters":[{"in":"path","name":"invoice_line_id","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"type":"object"},"type":"array"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Delete invoice line","tags":["InvoiceLines"]},"get":{"parameters":[{"in":"path","name":"invoice_line_id","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/InvoiceLine"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"View invoice line","tags":["InvoiceLines"]},"put":{"parameters":[{"in":"path","name":"invoice_line_id","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"$ref":"#/components/requestBodies/InvoiceLine"},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"type":"object"},"type":"array"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Edit invoice line","tags":["InvoiceLines"]}},"/invoices":{"get":{"parameters":[{"description":"Used to filter on the `contact_id` of the invoices","in":"query","name":"contact_id","schema":{"type":"string","format":"uuid"}},{"description":"Used to filter on the `project_id` of the invoices","in":"query","name":"project_id","required":false,"schema":{"type":"string","format":"uuid"}},{"description":"Used to filter on the `invoice_number` of the invoices","in":"query","name":"invoice_number","schema":{"type":"string"}},{"in":"query","name":"offer_number","schema":{"type":"string"}},{"in":"query","name":"is_draft","schema":{"type":"integer","enum":[0,1]}},{"in":"query","name":"is_offer","schema":{"type":"integer","enum":[0,1]}},{"in":"query","name":"is_locked","schema":{"type":"integer","enum":[0,1]}},{"in":"query","name":"date_from","schema":{"type":"string","format":"date"}},{"in":"query","name":"date_to","schema":{"type":"string","format":"date"}},{"in":"query","name":"issued_date","schema":{"type":"string","format":"date"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/Invoice"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"View list of invoices","tags":["Invoices"]},"post":{"requestBody":{"content":{"application/json":{"schema":{"properties":{"contact_id":{"format":"uuid","type":"string"},"created_or_modified_gte":{"format":"date","type":"string"},"date_from":{"format":"date","type":"string"},"date_to":{"format":"date","type":"string"},"erp_id":{"maxLength":255,"type":"string"},"erp_payment_term_id":{"maxLength":255,"type":"string"},"invoice_number":{"format":"int32","maxLength":8,"type":"integer"},"is_draft":{"type":"boolean"},"is_locked":{"type":"boolean"},"is_offer":{"type":"boolean"},"issued_date":{"format":"date","type":"string"},"message":{"maxLength":8192,"type":"string"},"offer_number":{"format":"int32","maxLength":8,"type":"integer"},"payment_due_date":{"format":"date","type":"string"},"payment_term_id":{"format":"uuid","type":"string"},"project_id":{"format":"uuid","type":"string"},"reference":{"maxLength":255,"type":"string"},"vat_percent":{"format":"int32","maxLength":2,"type":"integer"}},"type":"object"}}}},"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"properties":{"id":{"format":"uuid","type":"string"}},"type":"object"},"success":{"default":true,"type":"boolean"}},"type":"object"}}}},"422":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorValidation"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Add invoice","tags":["Invoices"]}},"/invoices/{invoice_id}":{"delete":{"parameters":[{"in":"path","name":"invoice_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"type":"object"},"type":"array"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Delete invoice","tags":["Invoices"]},"get":{"parameters":[{"in":"path","name":"invoice_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/Invoice"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"View invoice","tags":["Invoices"]},"put":{"parameters":[{"in":"path","name":"invoice_id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"properties":{"contact_id":{"format":"uuid","type":"string"},"date_from":{"format":"date","type":"string"},"date_to":{"format":"date","type":"string"},"erp_id":{"maxLength":255,"type":"string"},"erp_payment_term_id":{"maxLength":255,"type":"string"},"invoice_number":{"format":"int32","maxLength":8,"type":"integer"},"is_draft":{"type":"boolean"},"is_locked":{"type":"boolean"},"is_offer":{"type":"boolean"},"issued_date":{"format":"date","type":"string"},"message":{"maxLength":8192,"type":"string"},"offer_number":{"format":"int32","maxLength":8,"type":"integer"},"payment_due_date":{"format":"date","type":"string"},"payment_term_id":{"format":"uuid","type":"string"},"project_id":{"format":"uuid","type":"string"},"reference":{"maxLength":255,"type":"string"},"vat_percent":{"format":"int32","maxLength":2,"type":"integer"}},"type":"object"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"type":"object"},"type":"array"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Edit invoice","tags":["Invoices"]}},"/mass_messages_users":{"get":{"parameters":[{"description":"Used to filter on the `is_read` of the mass messages","in":"query","name":"is_read","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/MassMessagesUser"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"View list of mass messages for specific user","tags":["MassMessagesUsers"]}},"/mass_messages_users/{mass_messages_user_id}":{"get":{"parameters":[{"in":"path","name":"mass_messages_user_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/MassMessagesUser"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"View mass message","tags":["MassMessagesUsers"]},"put":{"parameters":[{"in":"path","name":"mass_messages_user_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"type":"object"},"type":"array"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Edit mass message","tags":["MassMessagesUsers"]}},"/materials":{"get":{"parameters":[{"description":"Used to filter on the `barcode` of the materials","in":"query","name":"barcode","required":false,"schema":{"type":"string"}},{"description":"Used to filter on the `name` of the materials","in":"query","name":"name","required":false,"schema":{"type":"string"}},{"description":"Used to find materials used in specific project by `project_id`","in":"query","name":"project_id","required":false,"schema":{"type":"string","format":"uuid"}},{"description":"Used to find currently rented materials","in":"query","name":"currently_rented","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"$ref":"#/components/schemas/Material"},"type":"array"},"pagination":{"$ref":"#/components/schemas/PaginationDetails"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"View list of all materials","tags":["Materials"]}},"/materials/{material_id}":{"delete":{"parameters":[{"in":"path","name":"material_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"items":{"type":"object"},"type":"array"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth-Token":[]},{"api_key":[]}],"summary":"Delete material","tags":["Materials"]},"get":{"parameters":[{"in":"path","name":"material_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/Material"},"success":{"type":"boolean"}},"type":"object"}}}}},"security":[{"X-Auth