openapi: 3.0.3 info: title: BEEP description: '' version: 1.0.0 servers: - url: 'https://api.beep.nl' paths: /api/alerts: get: summary: "api/alerts GET\nList all user alerts that are not deleted." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer b543a6f1gaDPk6VedhZvEc8' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\AlertController post: summary: "api/alerts/{id} POST\nCreate the specified user alert." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer f6g4V5edDv31bhPaZckE8a6' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\AlertController requestBody: required: true content: application/json: schema: type: object properties: alert_rule_id: type: integer description: 'The alert rule that has been alerted for.' example: 9 measurement_id: type: integer description: 'The physical quantity / unit to alert for.' example: 2 alert_value: type: string description: 'The alert value.' example: omnis show: type: boolean description: 'Set to false (0) if the alert should NOT be shown anymore.' example: false required: - alert_rule_id - measurement_id - alert_value '/api/alerts/{id}': get: summary: "api/alerts/{id} GET\nDisplay the specified user alert." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer cfdPD856bvVk31ag6h4aeZE' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\AlertController put: summary: "api/alerts/{id} PATCH\nUpdate the specified user alert." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer hVP56EZbe6vf3aDk1a8d4cg' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\AlertController requestBody: required: false content: application/json: schema: type: object properties: show: type: boolean description: 'Set to false (0) if the alert should NOT be shown anymore.' example: false delete: summary: "api/alerts/{id} DELETE\nDelete the specified user alert, or all if id === 'all', or specific id's when provided &alert_ids=1,4,7" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer fhD6vd4Eaka5ceP1Zb638gV' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\AlertController parameters: - in: path name: id description: 'The ID of the alert.' example: 12 required: true schema: type: integer /api/alert-rules: get: summary: "api/alert-rules GET\nList all user alert rules that are not deleted." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer chPkbDEf86aave3gd64V5Z1' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\AlertRuleController post: summary: "api/alert-rules/{id} POST\nCreate the specified user alert rule." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 3a8f6v5PZegVkdhD4ba6E1c' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\AlertRuleController requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the alert rule.' example: unde description: type: string description: 'The description of the alert rule.' example: ea measurement_id: type: integer description: 'The physical quantity / unit to alert for.' example: 14 calculation: type: string description: 'Calculation to be done with measurement value(s): (min, max, ave, der, cnt) -> Minimum, Maximum, Average (mean), Derivative, Count.' example: suscipit comparator: type: string description: 'Logical comparator to perform with comparison calculation result and threshold_value (=, <, >, <=, >=).' example: ex comparison: type: string description: 'Comparison function to perform with measurement value(s): (val, dif, abs, abs_dif) -> Value, Difference, Absolute value, Absolute value of the difference.' example: pariatur threshold_value: type: number description: 'The threshold value beyond which the alert will be sent.' example: 6574.72941 calculation_minutes: type: integer description: 'The amount of minutes used for calculating the (min, max, ave, der, cnt) of the measurement value(s). If not provided, the last recorded value is used as a reference.' example: 12 alert_on_occurrences: type: integer description: 'Amount of occurences that a calculated value goed beyond the threshold_value. If not filled the standard is 1 (immediate alert).' example: 12 alert_via_email: type: boolean description: 'Set to false (0) if an e-mail should NOT be sent on alert. Default: true (1).' example: true webhook_url: type: string description: 'URL of optional endpoint to call on alert for web hook integration.' example: veritatis active: type: boolean description: 'Set to false (0) if the alert should NOT be active. Default: true (1).' example: false exclude_months: type: array description: 'Array of month indexes (1-12). If not filled the standard alert is ''always on''.' example: - 1 - 2 - 3 - 11 - 12 items: type: string exclude_hours: type: array description: 'Array of hour indexes (0-23). If not filled the standard alert is ''always on''.' example: - 0 - 1 - 2 - 3 - 22 - 23 items: type: string exclude_hive_ids: type: array description: 'Array of Hive ids. If not filled the standard alert is evaluated on ''all hives''.' example: - qui items: type: string required: - measurement_id - calculation - comparator - comparison - threshold_value '/api/alert-rules/{id}': get: summary: "api/alert-rules/{id} GET\nDisplay the specified user alert rules." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer hcE6ZfvPd4DVgk361ab8e5a' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\AlertRuleController put: summary: "api/alert-rules/{id} PATCH\nUpdate the specified user alert rule." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer fa4Eb6k56gcD3vVdZ8e1ahP' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\AlertRuleController requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the alert rule.' example: ut description: type: string description: 'The description of the alert rule.' example: est measurement_id: type: integer description: 'The physical quantity / unit to alert for.' example: 19 calculation: type: string description: 'Calculation to be done with measurement value(s): (min, max, ave, der, cnt) -> Minimum, Maximum, Average (mean), Derivative, Count.' example: eius comparator: type: string description: 'Logical comparator to perform with comparison calculation result and threshold_value (=, <, >, <=, >=).' example: dolorum comparison: type: string description: 'Comparison function to perform with measurement value(s): (val, dif, abs, abs_dif) -> Value, Difference, Absolute value, Absolute value of the difference.' example: quas threshold_value: type: number description: 'The threshold value beyond which the alert will be sent.' example: 10.322 calculation_minutes: type: integer description: 'The amount of minutes used for calculating the (min, max, ave, der, cnt) of the measurement value(s). If not provided, the last recorded value is used as a reference.' example: 6 alert_on_occurrences: type: integer description: 'Amount of occurences that a calculated value goed beyond the threshold_value. If not filled the standard is 1 (immediate alert).' example: 9 alert_via_email: type: boolean description: 'Set to false (0) if an e-mail should NOT be sent on alert. Default: true (1).' example: true webhook_url: type: string description: 'URL of optional endpoint to call on alert for web hook integration.' example: suscipit active: type: boolean description: 'Set to false (0) if the alert should NOT be active. Default: true (1).' example: false exclude_months: type: array description: 'Array of month indexes (1-12). If not filled the standard alert is ''always on''.' example: - 1 - 2 - 3 - 11 - 12 items: type: string exclude_hours: type: array description: 'Array of hour indexes (0-23). If not filled the standard alert is ''always on''.' example: - 0 - 1 - 2 - 3 - 22 - 23 items: type: string exclude_hive_ids: type: array description: 'Array of Hive ids. If not filled the standard alert is evaluated on ''all hives''.' example: - fugiat items: type: string required: - measurement_id - calculation - comparator - comparison - threshold_value delete: summary: "api/alert-rules/{id} DELETE\nDelete the specified user alert rule." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 6hE583e6d1Pgcakab4VfZvD' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\AlertRuleController parameters: - in: path name: id description: 'The ID of the alert rule.' example: illo required: true schema: type: string /api/alert-rules-default: get: summary: "api/alert-rules-default GET\nList all default alert rules that are available." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer V1ah5avb6346PEekDf8cgdZ' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\AlertRuleController /api/categories: get: summary: "api/categories\nDisplay a listing of the inspection categories." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer eVZhkad5fg6b68P3c4aD1vE' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '' content: application/json: schema: type: array items: type: object example: - id: 1 type: system name: apiary icon: null source: null required: 0 input: list trans: en: Apiary nl: Bijenstand de: Bienenstand fr: Rucher ro: Stupină pt: Apiário es: Apiario da: Bigård unit: null children: - id: 2 type: '0' name: name icon: null source: null required: 0 input: text trans: en: Name nl: Naam de: Name fr: Nom ro: Nume pt: Nome es: Nombre da: Navn unit: null - id: 3 type: list name: location icon: null source: null required: 0 input: select_location trans: en: Location nl: Locatie de: Ort fr: Lieux ro: Locație pt: Localização es: Ubicación da: Lokation unit: null - id: 12 type: '1' name: number_of_bee_colonies icon: null source: null required: 0 input: number_positive trans: en: 'Number of bee colonies' nl: 'Aantal bijenvolken' de: 'Anzahl an Bienenvölkern' fr: 'Nombre de colonies' ro: 'Număr de colonii' pt: 'Número de colónias' es: 'Número de colonias de abejas melíferas' da: 'Antal bifamilier' unit: null - id: 13 type: list name: orientation icon: null source: null required: 0 input: options trans: en: Orientation nl: Orientatie de: Orientierung fr: Orientation ro: Orientare pt: Orientação es: Orientación da: Retning unit: null - id: 25 type: list name: status icon: null source: null required: 0 input: options trans: en: Status nl: Status de: Status fr: Statut ro: Stare pt: Estado es: Estado da: Status unit: null - id: 28 type: system name: photo icon: null source: null required: 0 input: image trans: en: Photo nl: Foto de: Foto fr: Photo ro: Poză pt: Fotografia es: Foto da: Foto unit: null - id: 913 type: null name: can_be_removed icon: null source: null required: 0 input: list trans: de: 'kann entfernt werden' ro: 'poate fi înlăturat' es: 'Puede ser removido' unit: null - id: 932 type: checklist name: type icon: null source: null required: 0 input: select trans: en: Type nl: Type de: Typ fr: type ro: Tip pt: Tipo es: Tipo da: Type unit: null - id: 29 type: system name: hive icon: null source: null required: 0 input: list trans: en: Hive nl: Kast de: Beute fr: Ruche ro: Stup pt: Colmeia es: Colmena da: Stade unit: null children: - id: 30 type: system name: id icon: null source: null required: 0 input: label trans: en: ID nl: ID de: ID fr: ID ro: ID pt: ID es: ID da: ID unit: null - id: 34 type: system name: type icon: null source: null required: 0 input: label trans: en: Type nl: Type de: Typ fr: type ro: Tip pt: Tipo es: Tipo da: Type unit: null - id: 64 type: system name: frame_size icon: null source: null required: 0 input: label trans: en: 'Frame size' nl: 'Raam afmetingen' de: Rähmchengröße fr: 'Taille des cadres' ro: 'Dimensiune ramă' pt: 'Tamanho do quadro' es: 'Tamaño de marco' da: Rammestørrelse unit: null - id: 84 type: system name: configuration icon: null source: null required: 0 input: label trans: en: Configuration nl: Samenstelling de: Konfiguration fr: Configuration ro: Configurație pt: Configuração es: Configuración da: Opbygning unit: null - id: 136 type: system name: location icon: null source: null required: 0 input: label trans: en: Location nl: Locatie de: Ort fr: Lieux ro: Locație pt: Localização es: Ubicación da: Lokation unit: null - id: 614 type: checklist name: weight icon: null source: null required: 0 input: number_2_decimals trans: en: Weight nl: Gewicht de: Gewicht fr: Poids ro: Greutate pt: Peso es: Peso da: Vægt unit: kg - id: 795 type: system name: photo icon: null source: null required: 0 input: image trans: en: Photo nl: Foto de: Foto fr: Photo ro: Poză pt: Fotografia es: Foto da: Foto unit: null - id: 818 type: system name: app icon: null source: null required: 0 input: list trans: nl: App en: App de: App fr: App ro: Aplicație pt: 'Aplicação (app)' es: App da: App unit: null - id: 149 type: list name: bee_colony icon: null source: null required: 0 input: label trans: en: 'Bee colony' nl: Bijenvolk de: Bienenvolk fr: Colonie ro: 'Colonie de albine' pt: Colónia es: 'Colonia de abejas' da: Bifamilie unit: null children: - id: 73 type: checklist name: space icon: null source: null required: 0 input: label trans: en: Space nl: Ruimte de: Platz fr: Espacement ro: Spațiu pt: Espaço es: Espacio da: Mellemrum unit: null - id: 150 type: system name: origin icon: null source: null required: 0 input: label trans: en: Origin nl: Oorsprong de: Ursprung fr: Origine ro: Origine pt: Origem es: Origen da: Oprindelse unit: null - id: 165 type: list name: activity icon: null source: null required: 0 input: label trans: en: Activity nl: Activiteit de: Aktivität fr: Activité ro: Activitate pt: Actividade es: Actividad da: Aktivitet unit: null - id: 208 type: system name: status icon: null source: null required: 0 input: label trans: en: Status nl: Status de: Status fr: Statut ro: Stare pt: Estado es: Estado da: Status unit: null - id: 213 type: list name: characteristics icon: null source: null required: 0 input: label trans: en: Characteristics nl: Eigenschappen de: Charakteristiken fr: Caracteristique ro: Caracteristici pt: Características es: Características da: Egenskaber unit: null - id: 253 type: checklist name: swarm_prevention icon: null source: null required: 0 input: label trans: en: 'Swarm prevention' nl: Zwermverhindering de: Schwarmverhinderung fr: 'Prévention de l''essaimage' ro: 'Prevenirea roirii' pt: 'Prevenção de enxameamento' es: 'Prevención de enjambrazón' da: Sværmehindring unit: null - id: 263 type: list name: brood icon: null source: null required: 0 input: label trans: en: Brood nl: Broed de: Brut fr: Couvain ro: Puiet pt: Criação es: Cría da: Yngel unit: null - id: 333 type: checklist name: queen icon: null source: null required: 0 input: label trans: en: Queen nl: Moer de: Königin fr: Reine ro: Matcă pt: Raínha es: Reina da: Dronning unit: null - id: 442 type: list name: drones icon: null source: null required: 0 input: label trans: en: Drones nl: Darren de: Drohnen fr: Mâles ro: Trântori pt: Zangões es: Zánganos da: Droner unit: null - id: 448 type: checklist name: uniting_colonies icon: null source: null required: 0 input: label trans: en: 'Uniting colonies' nl: 'Volken samenvoegen' de: Volksvereinigung fr: 'Reunion de colonies' ro: 'Unificare colonii' pt: 'União de colónias' es: 'Colmenas fusionadas' da: 'Samling af bifamilier' unit: null - id: 453 type: list name: bees_added icon: null source: null required: 0 input: label trans: en: 'Bees added' nl: 'Bijen toegevoegd' de: 'Bienen hinzugefügt' fr: 'Ajout d''abeille' ro: 'Albine adăugate' pt: 'Abelhas adicionadas' es: 'Abejas agregadas' da: 'Bier tilføjet' unit: null - id: 459 type: list name: loss icon: null source: null required: 0 input: label trans: en: Loss nl: Verlies de: Verluste fr: Perdu ro: Pierderi pt: Perdas es: Pérdida da: Tab unit: null - id: 472 type: list name: removal icon: null source: null required: 0 input: label trans: en: Removal nl: Verwijdering de: Entfernt fr: Suppression ro: Înlăturare pt: Remoção es: Remoción da: Fjernelse unit: null - id: 755 type: system name: reminder icon: null source: null required: 0 input: label trans: nl: Herinnnering en: Reminder de: Erinnerung fr: Rappel ro: 'Aducere aminte' pt: Lembrete es: Recordatorio da: Påmindelse unit: null - id: 771 type: checklist name: size icon: null source: null required: 0 input: label trans: nl: Grootte en: Size de: Größe fr: Taille ro: Mărime pt: Tamanho es: Tamaño da: Størrelse unit: null - id: 776 type: checklist name: splitting_colony icon: null source: null required: 0 input: label trans: nl: 'Volk splitsen' en: 'Splitting colony' de: 'Aufgeteiltes Volk' fr: 'Division de colonie' ro: 'Împărțirea coloniei' pt: 'Colónia desdobrada' es: 'División de colonia' da: 'Opdeling af bifamilie' unit: null - id: 867 type: system name: purpose icon: null source: null required: 0 input: label trans: en: Purpose nl: Doel de: Zweck fr: Raison ro: Scop pt: Propósito es: Propósito da: Formål unit: null - id: 960 type: checklist name: comb_replacement icon: null source: null required: 0 input: label trans: en: 'Comb replacement' nl: 'Raat vervanging' de: Wabenerneuerung fr: 'Remplacement de rayon' ro: 'Înlocuirea fagurelui' pt: 'Substituição de favos' es: 'Reemplazo de panal' da: Tavleudskiftning unit: null - id: 475 type: list name: food icon: null source: null required: 0 input: label trans: en: Food nl: Voedsel de: Futter fr: Nourriture ro: Hrană pt: Comida es: Alimento da: Føde unit: null children: - id: 476 type: checklist name: feeding icon: null source: null required: 0 input: label trans: en: Feeding nl: Bijvoeren de: Fütterung fr: Nourrissement ro: Hrănire pt: Alimentação es: Alimentación da: Fodring unit: null - id: 493 type: checklist name: stock icon: null source: null required: 0 input: label trans: en: Stock nl: Voorraad de: Vorrat fr: Stock ro: Stoc pt: Stock es: Stock da: Lager unit: null - id: 500 type: list name: forage icon: null source: null required: 0 input: label trans: en: Forage nl: Dracht de: Futter fr: Butinage ro: Cules pt: Forrageamento es: Forraje unit: null - id: 891 type: checklist name: water icon: null source: null required: 0 input: label trans: en: Water nl: Water de: Wasser fr: Eau ro: Apă pt: Água es: Agua da: Vand unit: null - id: 513 type: list name: disorder icon: null source: null required: 0 input: label trans: en: Disorder nl: Aandoening de: Störung fr: Problème ro: Boală pt: Problemas es: Problema da: Sygdom unit: null children: - id: 514 type: list name: type icon: null source: null required: 0 input: label trans: en: Type nl: Type de: Typ fr: type ro: Tip pt: Tipo es: Tipo da: Type unit: null - id: 582 type: list name: severity icon: null source: null required: 0 input: score_amount trans: en: Severity nl: Ernst de: Schweregrad fr: Sévérité ro: Severitate pt: Severidade da: Alvorlighed unit: null - id: 589 type: checklist name: laboratory_test icon: null source: null required: 0 input: label trans: en: 'Laboratory test' nl: 'Laboratorium test' de: Labortest fr: 'Test laboratoire' ro: 'Test de laborator' pt: 'Teste laboratorial' es: 'Test de laboratorio' da: Laboratorietest unit: null - id: 594 type: list name: treatment icon: null source: null required: 0 input: label trans: en: Treatment nl: Behandeling de: Behandlung fr: Traitement ro: Tratament pt: Tratamento es: Tratamiento da: Behandling unit: null - id: 830 type: checklist name: varroa icon: null source: null required: 0 input: label trans: en: Varroa nl: Varroa de: Varoa fr: Varroa ro: Varroa pt: Varroa es: Varroa da: Varroa unit: null - id: 612 type: checklist name: weather icon: null source: null required: 0 input: label trans: en: Weather nl: Weer de: Wetter fr: Météo ro: Vreme pt: Clima es: 'Tiempo atmosférico' da: Vejr unit: null children: - id: 615 type: checklist name: ambient_temperature icon: null source: null required: 0 input: number trans: en: 'Ambient temperature' nl: Omgevingstemperatuur de: Umgebungstemperatur fr: 'Température ambiante' ro: 'Temperatura ambientală' pt: 'Temperatura ambiente' es: 'Temperatura ambiental' da: Omgivelsestemperatur unit: °C - id: 620 type: checklist name: humidity icon: null source: null required: 0 input: number_percentage trans: en: Humidity nl: Luchtvochtigheid de: Feuchtigkeit fr: Humidité ro: Umiditate pt: Humidade es: Humedad da: Fugtighed unit: '%' - id: 621 type: checklist name: cloud_cover icon: null source: null required: 0 input: options trans: en: 'Cloud cover' nl: Wolken de: Wolkendecke fr: 'Couverture nuageuse' ro: Nebulozitate pt: Nebulosidade es: 'Cubierto de nubes' da: Skydække unit: null - id: 628 type: checklist name: wind icon: null source: null required: 0 input: number trans: en: Wind nl: Wind de: Wind fr: Vent ro: Vânt pt: Vento es: Viento da: Vind unit: bft - id: 629 type: checklist name: precipitation icon: null source: null required: 0 input: number_positive trans: en: Precipitation nl: Neerslag de: Niederschlag fr: Précipitation ro: Precipitații pt: Precipitação es: Precipitación da: Nedbør unit: mm - id: 658 type: system name: beekeeper icon: null source: null required: 0 input: list trans: en: Beekeeper nl: Imker de: Imker fr: Apiculteur ro: Apicultor pt: Apicultor es: Apicultor(a) da: Biavler unit: null children: - id: 659 type: '0' name: name icon: null source: null required: 0 input: boolean trans: en: Name nl: Naam de: Name fr: Nom ro: Nume pt: Nome es: Nombre da: Navn unit: null - id: 660 type: list name: location icon: null source: null required: 0 input: select_location trans: en: Location nl: Locatie de: Ort fr: Lieux ro: Locație pt: Localização es: Ubicación da: Lokation unit: null - id: 666 type: '1' name: telephone icon: null source: null required: 0 input: list_item trans: en: Telephone nl: Telefoon de: Telefon fr: Telephone ro: Telefon pt: Telefone es: Teléfono da: Telefon unit: null - id: 667 type: '2' name: email icon: null source: null required: 0 input: list_item trans: en: Email nl: Email de: Email fr: Email ro: Email pt: Email es: Email da: Email unit: null - id: 668 type: '3' name: date_of_birth icon: null source: null required: 0 input: date trans: en: 'Date of birth' nl: Geboortedatum de: Geburtsdatum fr: 'Date de naissance' ro: 'Data nașterii' pt: 'Data de nascimento' es: 'Fecha de Nacimiento' da: Fødselsdato unit: null - id: 669 type: '4' name: gender icon: null source: null required: 0 input: list_item trans: en: Gender nl: Geslacht de: Geschlecht fr: Genre ro: Gen pt: Género es: Género da: Køn unit: null - id: 670 type: list name: beekeeper_since icon: null source: null required: 0 input: label trans: en: 'Beekeeper since' nl: 'Imker sinds' de: 'Imker seit' fr: 'Apiculteur depuis' ro: 'Apicultor din' pt: 'Apicultor desde' es: 'Apicultor desde' da: 'Biavler siden' unit: null - id: 672 type: '5' name: beekeeper_id icon: null source: null required: 0 input: text trans: en: 'Beekeeper ID' nl: 'Imker ID' de: 'Imker ID' fr: 'ID apiculteur' ro: 'ID apicultor' pt: 'Número de apicultor' es: 'ID Apicultor' da: 'Biavler ID' unit: null - id: 673 type: list name: company icon: null source: null required: 0 input: label trans: en: Company nl: Bedrijf de: Betrieb fr: Société ro: Companie pt: Empresa es: Compañía/Empresa da: Firma unit: null - id: 680 type: list name: method icon: null source: null required: 0 input: options trans: en: Method nl: Methode de: Methode fr: Méthode ro: Metodă pt: Método es: Método da: Metode unit: null - id: 688 type: list name: role icon: null source: null required: 0 input: options trans: en: Role nl: Rol fr: Rôle ro: Rol pt: Papel es: Rol da: Rolle unit: null - id: 691 type: system name: photo icon: null source: null required: 0 input: list_item trans: en: Photo nl: Foto de: Foto fr: Photo ro: Poză pt: Fotografia es: Foto da: Foto unit: null - id: 692 type: list name: inspection_role icon: null source: null required: 0 input: label trans: en: 'Inspection role' nl: 'Inspectie rol' fr: 'Rôle d''inspection' ro: 'Scopul inspecției' pt: Inspecção es: 'Rol durante la inspección' unit: null - id: 698 type: list name: production icon: null source: null required: 0 input: label trans: en: Production nl: Productie de: Produktion fr: Production ro: Producție pt: Produção es: Producción da: Produktion unit: null children: - id: 851 type: checklist name: honey icon: null source: null required: 0 input: label trans: en: Honey nl: Honing de: Honig fr: Miel ro: Miere pt: Mel es: Miel da: Honning unit: null - id: 852 type: checklist name: other icon: null source: null required: 0 input: label trans: en: Other nl: Andere de: andere fr: Autre ro: Alte pt: Outros es: Otro da: Andet unit: null tags: - Api\CategoryController '/api/categories/{id}': get: summary: "api/categories/{id}\nDisplay the specified category." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer bP6h3aEcd1V5fvDZ6a4gek8' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\CategoryController parameters: - in: path name: id description: 'The ID of the category.' example: 1 required: true schema: type: integer /api/categoryinputs: get: summary: "api/categoryinputs\nList of all available input types of the inspection categories" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer Za864PhdgeaDEV15b3cfvk6' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '' content: application/json: schema: type: array items: type: object example: - id: 1 name: List type: list min: null max: null decimals: null - id: 2 name: 'List item' type: list_item min: null max: null decimals: null - id: 3 name: 'Boolean (yes = green)' type: boolean min: null max: null decimals: null tags: - Api\CategoryController /api/checklists: get: summary: 'Display a listing of the resource.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer dcDbh8ZPk654Ea3Vv1faeg6' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\ChecklistController post: summary: '' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer g8d5Db6vEfak4cP6eZh1V3a' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\ChecklistController '/api/checklists/{id}': get: summary: '' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 8Vka5egbP4c6ahvf1ZED63d' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\ChecklistController put: summary: '' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer Pahb3EZf56eVdD6akg148cv' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\ChecklistController delete: summary: '' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 8eaZPgc66db3fk4vEahV1D5' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\ChecklistController parameters: - in: path name: id description: 'The ID of the checklist.' example: 11 required: true schema: type: integer /api/devices/multiple: post: summary: "api/devices/multiple POST\nStore/update multiple Devices in an array of Device objects" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 65hvPag86bkEaDde4cV13Zf' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\DeviceController requestBody: required: false content: application/json: schema: type: object properties: id: type: integer description: 'Device id to update. (Required without key and hardware_id)' example: 15 key: type: string description: 'DEV EUI of the sensor to enable storing sensor data incoming on the api/sensors or api/lora_sensors endpoint. (Required without id and hardware_id)' example: et hardware_id: type: string description: 'Hardware id of the device as device name in TTN. (Required without id and key)' example: dolores name: type: string description: 'Device name' example: eos hive_id: type: integer description: 'Hive that the sensor is measuring. Default: null' example: 13 type: type: string description: 'Category name of the hive type from the Categories table. Default: beep' example: iste last_message_received: type: timestamp description: 'Will be converted with date(''Y-m-d H:i:s'', $last_message_received); before storing' example: et firmware_version: type: string description: 'Firmware version of the Device' example: quibusdam hardware_version: type: string description: 'Hardware version of the Device' example: incidunt boot_count: type: integer description: 'Amount of boots of the Device' example: 11 measurement_interval_min: type: number description: 'Measurement interval in minutes' example: 2151.5343 measurement_transmission_ratio: type: number description: 'Measurements ratio of non-transmitted vs transmitted messages. If 0 or 1, every measurement gets transmitted.' example: 542406.1 ble_pin: type: string description: 'Bleutooth PIN of Device: 6 numbers between 0-9' example: incidunt battery_voltage: type: number description: 'Last measured battery voltage' example: 188.3714353 next_downlink_message: type: string description: 'Hex string to send via downlink at next connection (LoRaWAN port 6)' example: totam last_downlink_result: type: string description: 'Result received from BEEP base after downlink message (LoRaWAN port 5)' example: exercitationem '/api/devices/ttn/{dev_id}': get: summary: "api/devices/ttn/{dev_id} GET\nGet a BEEP TTS Cloud Device by Device ID (BEEP hardware_id)" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer f3e1Vha6cPdv6D5bak4g8EZ' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\DeviceController post: summary: "api/devices/ttn/{dev_id} POST\nCreate a BEEP TTS Cloud Device by Device ID, lorawan_device.dev_eui, and lorawan_device.app_key" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer kcaE4ZeVP1653Dadbvg68hf' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\DeviceController requestBody: required: false content: application/json: schema: type: object properties: lorawan_device: type: object description: '' example: [] properties: dev_eui: type: string description: 'value moet 16 karakters lang zijn.' example: vbwertiqmccvqudh app_key: type: string description: 'value moet 32 karakters lang zijn.' example: yldwyybaokbniyrsjvbyvdcnwhwmhtui parameters: - in: path name: dev_id description: 'The ID of the dev.' example: accusamus required: true schema: type: string /api/devices: get: summary: "api/devices GET\nList all user Devices" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer D5feVd3hv461bgaEkP8Zc6a' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '' content: application/json: schema: type: array items: type: object example: - id: 1 hive_id: 2 name: BEEPBASE-0000 key: '000000000000000' created_at: '2020-01-22 09:43:03' last_message_received: null hardware_id: null firmware_version: null hardware_version: null boot_count: null measurement_interval_min: null measurement_transmission_ratio: null ble_pin: null battery_voltage: null next_downlink_message: null last_downlink_result: null type: beep hive_name: 'Hive 2' location_name: 'Test stand 1' owner: true sensor_definitions: - id: 7 name: null inside: null offset: 8131 multiplier: null input_measurement_id: 7 output_measurement_id: 20 device_id: 1 input_abbr: w_v output_abbr: weight_kg tags: - Api\DeviceController requestBody: required: false content: application/json: schema: type: object properties: hardware_id: type: string description: 'Provide to filter on hardware_id' example: tempora post: summary: "api/devices POST\nCreate or Update a Device" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 5edkaPgZh66E4c8v3afDV1b' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\DeviceController requestBody: required: false content: application/json: schema: type: object properties: id: type: integer description: 'Device id to update. (Required without key and hardware_id)' example: 4 key: type: string description: 'DEV EUI of the sensor to enable storing sensor data incoming on the api/sensors or api/lora_sensors endpoint. (Required without id and hardware_id)' example: aut hardware_id: type: string description: 'Hardware id of the device as device name in TTN. (Required without id and key)' example: sint name: type: string description: 'Device name' example: incidunt hive_id: type: integer description: 'Hive that the sensor is measuring. Default: null' example: 17 type: type: string description: 'Category name of the hive type from the Categories table. Default: beep' example: quia last_message_received: type: timestamp description: 'Will be converted with date(''Y-m-d H:i:s'', $last_message_received); before storing' example: ad firmware_version: type: string description: 'Firmware version of the Device' example: saepe hardware_version: type: string description: 'Hardware version of the Device' example: id boot_count: type: integer description: 'Amount of boots of the Device' example: 19 measurement_interval_min: type: number description: 'Measurement interval in minutes' example: 3.09777115 measurement_transmission_ratio: type: number description: 'Measurements ratio of non-transmitted vs transmitted messages. If 0 or 1, every measurement gets transmitted.' example: 4.41 ble_pin: type: string description: 'Bleutooth PIN of Device: 6 numbers between 0-9' example: consequuntur battery_voltage: type: number description: 'Last measured battery voltage' example: 285632907.2 next_downlink_message: type: string description: 'Hex string to send via downlink at next connection (LoRaWAN port 6)' example: sint last_downlink_result: type: string description: 'Result received from BEEP base after downlink message (LoRaWAN port 5)' example: non create_ttn_device: type: boolean description: 'If true, create a new LoRaWAN device in the BEEP TTN console. If succesfull, create the device.' example: true app_key: type: string description: 'BEEP base LoRaWAN application key that you would like to store in TTN' example: asperiores '/api/devices/{id}': get: summary: "api/devices/{id} GET\nList one Device by id" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 4hZ6a16cbe3kdfgaV5PEvD8' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\DeviceController put: summary: "api/devices PUT/PATCH\nUpdate an existing Device" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer h8aPcVgeb5a6k3v1EDZd6f4' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\DeviceController requestBody: required: false content: application/json: schema: type: object properties: id: type: integer description: 'Device id to update. (Required without key and hardware_id)' example: 16 key: type: string description: 'DEV EUI of the sensor to enable storing sensor data incoming on the api/sensors or api/lora_sensors endpoint. (Required without id and hardware_id)' example: architecto hardware_id: type: string description: 'Hardware id of the device as device name in TTN. (Required without id and key)' example: ut name: type: string description: 'Name of the sensor' example: quam hive_id: type: integer description: 'Hive that the sensor is measuring. Default: null' example: 1 type: type: string description: 'Category name of the hive type from the Categories table. Default: beep' example: quam delete: type: boolean description: 'If true delete the sensor and all it''s data in the Influx database' example: true last_message_received: type: timestamp description: 'Will be converted with date(''Y-m-d H:i:s'', $last_message_received); before storing' example: voluptatibus firmware_version: type: string description: 'Firmware version of the Device' example: earum hardware_version: type: string description: 'Hardware version of the Device' example: enim boot_count: type: integer description: 'Amount of boots of the Device' example: 18 measurement_interval_min: type: number description: 'Measurement interval in minutes' example: 59104180.11 measurement_transmission_ratio: type: number description: 'Measurements ratio of non-transmitted vs transmitted messages. If 0 or 1, every measurement gets transmitted.' example: 372806.7125864 ble_pin: type: string description: 'Bleutooth PIN of Device: 6 numbers between 0-9' example: quod battery_voltage: type: number description: 'Last measured battery voltage' example: 70761.8 next_downlink_message: type: string description: 'Hex string to send via downlink at next connection (LoRaWAN port 6)' example: aut last_downlink_result: type: string description: 'Result received from BEEP base after downlink message (LoRaWAN port 5)' example: omnis parameters: - in: path name: id description: 'The ID of the device.' example: 4 required: true schema: type: integer /api/export/csv: post: summary: "api/export/csv POST\nGenerate a CSV measurement data export from InfluxDB. Make sure not to load a too large timespan (i.e. > 30 days), because the call will not succeed due to memory overload." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer EbPe4836kgvZf5V6a1cDdah' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\ExportController requestBody: required: true content: application/json: schema: type: object properties: device_id: type: required description: 'Device id to download data from' example: illum start: type: date description: 'Date for start of data export.' example: '2020-05-27 16:16' end: type: date description: 'Date for end of data export.' example: '2020-05-30 00:00' separator: type: string description: 'Symbol that should be used to separate columns in CSV file.' example: ; measurements: type: string description: 'Comma separated list of measurement types to load. If you want a lot of data (i.e. > 30 days), make sure not to load more than one measurement.' example: '''am2315_t,am2315_h,mhz_co2''' link: type: boolean description: 'filled means: save the export to a file and provide the link, not filled means: output a text/html header with text containing the .csv content. Example:' example: false required: - start - end /api/export: get: summary: '' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer vPd3be4ghVaEk1a6f86cDZ5' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\ExportController /api/flashlogs: get: summary: "api/flashlogs GET\nProvide a list of the available flashlogs" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer dZebVca6PEaD4563v1hkg8f' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\FlashLogController '/api/flashlogs/{id}': get: summary: "api/flashlogs/{id} GET\nProvide the contents of the log_file_parsed property of the flashlog" description: '' parameters: - in: query name: id description: 'Flashlog ID to parse' example: 1 required: true schema: type: integer description: 'Flashlog ID to parse' example: 1 - in: header name: Authorization description: '' example: 'Bearer PZha681Vv3DdE4ebka5gcf6' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\FlashLogController requestBody: required: false content: application/json: schema: type: object properties: matches_min: type: integer description: 'Flashlog minimum amount of inline measurements that should be matched. Default: 5.' example: 2 match_props: type: integer description: 'Flashlog minimum amount of measurement properties that should match. Default: 9.' example: 7 db_records: type: integer description: 'Flashlog minimum amount of inline measurements that should be matched. Default: 80.' example: 15 block_id: type: integer description: 'Flashlog block index to get both Flashlog as database data from.' example: 1 block_data_index: type: integer description: 'Flashlog data index to get both Flashlog as database data from.' example: 0 data_minutes: type: integer description: 'Flashlog data amount of minutes to show data from. Default: 10080 (1 week).' example: 9 from_cache: type: boolean description: 'get Flashlog parse result from cache (24 hours). Default: true.' example: false save_result: type: boolean description: 'Flashlog save the parsed result as new log_file_parsed. Default: false.' example: false csv: type: integer description: 'Save the Flashlog block_id data as a CSV file (1) and return a link. Default: 0.' example: 0 json: type: integer description: 'Save the Flashlog block_id data as a JSON file (1) and return a link. Default: 0.' example: 0 post: summary: "api/flashlogs/{id} POST\nFill the missing database values with Flashlog values that match" description: '' parameters: - in: query name: id description: 'Flashlog ID to parse' example: 14 required: true schema: type: integer description: 'Flashlog ID to parse' example: 14 - in: header name: Authorization description: '' example: 'Bearer bP3DV8chE466vgdfekZaa15' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\FlashLogController requestBody: required: false content: application/json: schema: type: object properties: matches_min: type: integer description: 'Flashlog minimum amount of inline measurements that should be matched. Default: 5.' example: 2 match_props: type: integer description: 'Flashlog minimum amount of measurement properties that should match. Default: 9.' example: 7 db_records: type: integer description: 'Flashlog minimum amount of inline measurements that should be matched. Default: 80.' example: 15 block_id: type: integer description: 'Flashlog block index to get both Flashlog as database data from.' example: 1 from_cache: type: boolean description: 'get Flashlog parse result from cache (24 hours). Default: true.' example: false save_result: type: boolean description: 'Flashlog save the parsed result as new log_file_parsed. Default: false.' example: false delete: summary: "api/flashlogs/{id} DELETE\nDelete a block of data (block_id filled), or the whole Flashlog file" description: '' parameters: - in: query name: id description: 'Flashlog ID to delete the complete Flashlog file' example: 19 required: true schema: type: integer description: 'Flashlog ID to delete the complete Flashlog file' example: 19 - in: header name: Authorization description: '' example: 'Bearer h36gcafP8kba1Vd5DE6Z4ev' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\FlashLogController requestBody: required: false content: application/json: schema: type: object properties: block_id: type: integer description: 'Flashlog block index to delete (only the) previously persisted data from the database' example: 10 parameters: - in: path name: id description: 'The ID of the flashlog.' example: 9 required: true schema: type: integer /api/groups/checktoken: post: summary: "api/groups/checktoken POST\nCheck a token for a group id, and accept or decline the invite" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 1a4D8dgchkfZPV5ea3bE66v' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\GroupController requestBody: required: true content: application/json: schema: type: object properties: token: type: string description: '' example: esse group_id: type: string description: '' example: amet decline: type: boolean description: '' example: true required: - token - group_id /api/groups: get: summary: '' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer V6Pbk354Ec1daDh6afevg8Z' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\GroupController post: summary: '' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 6kfh3D6ca18gadbPVe5E4Zv' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\GroupController '/api/groups/{id}': get: summary: '' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 63Zgc8Eh1v4fDe6a5VkPdab' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\GroupController put: summary: '' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer DZ3vdVa58Phcf6E1g6k4eab' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\GroupController delete: summary: '' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer hc3Z85f6dk1bDVE46aaevgP' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\GroupController parameters: - in: path name: id description: 'The ID of the group.' example: 13 required: true schema: type: integer '/api/groups/detach/{id}': delete: summary: '' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 8dbf6a6vaDEhg3c51Pe4ZVk' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\GroupController parameters: - in: path name: id description: 'The ID of the detach.' example: sint required: true schema: type: string /api/hives: get: summary: "api/hives GET\nDisplay a listing of user hives." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer bEfa36VZc5edvk61PDa8g4h' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '' content: application/json: schema: type: object example: hives: - id: 1 location_id: 1 hive_type_id: 43 color: '#35f200' name: 'Kast 1' created_at: '2017-07-13 23:34:49' type: spaarkast location: '' attention: null impression: null reminder: null reminder_date: null inspection_count: 0 sensors: - 3 - 19 owner: true layers: - id: 1 order: 0 color: '#35f200' type: brood framecount: 10 - id: 2 order: 1 color: '#35f200' type: brood framecount: 10 - id: 3 order: 2 color: '#35f200' type: honey framecount: 10 queen: null properties: hives: type: array example: - id: 1 location_id: 1 hive_type_id: 43 color: '#35f200' name: 'Kast 1' created_at: '2017-07-13 23:34:49' type: spaarkast location: '' attention: null impression: null reminder: null reminder_date: null inspection_count: 0 sensors: - 3 - 19 owner: true layers: - id: 1 order: 0 color: '#35f200' type: brood framecount: 10 - id: 2 order: 1 color: '#35f200' type: brood framecount: 10 - id: 3 order: 2 color: '#35f200' type: honey framecount: 10 queen: null items: type: object tags: - Api\HiveController post: summary: "api/hives POST\nStore a newly created Hive in storage for the authenticated user." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 41bh35E6vafDgdV6ePacZk8' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\HiveController requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: quod location_id: type: integer description: '' example: 9 hive_type_id: type: integer description: '' example: 2 queen: type: object description: '' example: [] properties: race_id: type: integer description: '' example: 12 created_at: type: string description: 'value is geen geldige datum.' example: '2022-06-10T11:33:54' name: type: string description: '' example: qui required: - name - location_id '/api/hives/{id}': get: summary: "api/hives/{id} GET\nDisplay the specified resource." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer EcDghVda6kf5Zbe8vP613a4' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\HiveController put: summary: "api/hives/{id} PATCH\nUpdate the specified user Hive in storage." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer hE6568Zc4abev3f1PgdkDaV' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\HiveController requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: omnis location_id: type: integer description: '' example: 15 hive_type_id: type: integer description: '' example: 6 queen: type: object description: '' example: [] properties: race_id: type: integer description: '' example: 11 created_at: type: string description: 'value is geen geldige datum.' example: '2022-06-10T11:33:54' name: type: string description: '' example: beatae required: - name - location_id delete: summary: "api/hives/{id} DELETE\nRemove the specified user Hive from storage." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer f6k1g63ae5P84ZVDEcvhabd' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\HiveController parameters: - in: path name: id description: 'The ID of the hive.' example: 1 required: true schema: type: integer /api/images: get: summary: 'Display a listing of the resource.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer hgb3vd6V1kac6ea5E4ZPDf8' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\ImageController post: summary: 'Store a newly created resource in storage.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 16kehDd53g8bVaf6aPc4EvZ' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\ImageController delete: summary: 'Remove the specified resource from storage.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 6cka8bDZ361gv4dEP5hVfae' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\ImageController '/api/images/{id}': get: summary: 'Display the specified resource.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 8c4P3aE6eDvg5Z6Vh1fkdba' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\ImageController put: summary: 'Update the specified resource in storage.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 66Pghf3kE48cZ5Db1veaVad' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\ImageController parameters: - in: path name: id description: 'The ID of the image.' example: 16 required: true schema: type: integer /api/inspections: get: summary: "api/inspections GET\nShow the 'inspections' list with objects reflecting only the general inspection data." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 1kd68ge53vfcP4aDhZba6VE' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\InspectionsController /api/inspections/lists: get: summary: "api/inspections/lists GET\nList checklists and its inspections linked to Hive id. The 'inspections' object contains a descending date ordered list of general inspection data. The 'items_by_date' object contains a list of (rows of) inspection items that can be placed (in columns) under the inspections by created_at date (table format). NB: Use 'Accept-Language' Header (default nl_NL) to provide localized category names (anc, name) in items_by_date." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer cv1k3b6Z85adaehP4VgfED6' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '' content: application/json: schema: type: object example: checklists: - id: 810 type: beep_v2_copy name: 'Beep v2 - info@beep.nl' description: null created_at: '2020-01-13 18:30:02' updated_at: '2020-01-13 19:58:47' category_ids: - 149 - 771 - 963 - 964 - 965 - 966 - 263 - 265 - 270 - 276 required_ids: [] owner: true researches: [] properties: checklists: type: array example: - id: 810 type: beep_v2_copy name: 'Beep v2 - info@beep.nl' description: null created_at: '2020-01-13 18:30:02' updated_at: '2020-01-13 19:58:47' category_ids: - 149 - 771 - 963 - 964 - 965 - 966 - 263 - 265 - 270 - 276 required_ids: [] owner: true researches: [] items: type: object tags: - Api\InspectionsController requestBody: required: true content: application/json: schema: type: object properties: id: type: integer description: 'The hive to request inspections from.' example: 16 required: - id '/api/inspections/{id}': get: summary: "api/inspections/{id} GET\nShow the 'inspection' object. The object reflects only the general inspection data." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 1D8Zc3fag4V5bkhd6aveE6P' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\InspectionsController delete: summary: 'Remove the specified resource from storage.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer e8Z51a4bV6hkgcPvdEf36Da' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\InspectionsController parameters: - in: path name: id description: 'The id of the inspection.' example: non required: true schema: type: string '/api/inspections/hive/{hive_id}': get: summary: "api/inspections/hive/{hive_id} GET\nList all inspections linked to Hive id. The 'inspections' object contains a descending date ordered list of general inspection data. The 'items_by_date' object contains a list of (rows of) inspection items that can be placed (in columns) under the inspections by created_at date (table format). NB: Use 'Accept-Language' Header (default nl_NL) to provide localized category names (anc, name) in items_by_date." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer ve1cD8a4f6a6hgk5bZ3EdVP' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '' content: application/json: schema: type: object example: inspections: - id: 93 notes: null reminder: null reminder_date: null impression: 1 attention: null created_at: '2020-05-18 12:34:00' checklist_id: 829 image_id: null owner: true thumb_url: null hive_id: 42 - id: 91 notes: null reminder: null reminder_date: null impression: 3 attention: 0 created_at: '2020-05-18 11:43:00' checklist_id: 829 image_id: null owner: true thumb_url: null hive_id: 42 items_by_date: - anc: null name: 'Bee colony' items: null - anc: 'Bee colony > Brood > ' name: 'Pattern consistency' type: score range: 'min: 1 - max: 5' items: - id: 138 value: '3' inspection_id: 93 category_id: 279 val: '3' unit: null type: score - '' - anc: 'Bee colony > Brood > Status > ' name: 'All stages' type: boolean range: null items: - '' - id: 77 value: '1' inspection_id: 91 category_id: 868 val: 'Yes' unit: null type: boolean - anc: 'Bee colony > Brood > Status > ' name: Eggs type: boolean range: null items: - '' - id: 308 value: '1' inspection_id: 91 category_id: 270 val: 'Yes' unit: null type: boolean properties: inspections: type: array example: - id: 93 notes: null reminder: null reminder_date: null impression: 1 attention: null created_at: '2020-05-18 12:34:00' checklist_id: 829 image_id: null owner: true thumb_url: null hive_id: 42 - id: 91 notes: null reminder: null reminder_date: null impression: 3 attention: 0 created_at: '2020-05-18 11:43:00' checklist_id: 829 image_id: null owner: true thumb_url: null hive_id: 42 items: type: object items_by_date: type: array example: - anc: null name: 'Bee colony' items: null - anc: 'Bee colony > Brood > ' name: 'Pattern consistency' type: score range: 'min: 1 - max: 5' items: - id: 138 value: '3' inspection_id: 93 category_id: 279 val: '3' unit: null type: score - '' - anc: 'Bee colony > Brood > Status > ' name: 'All stages' type: boolean range: null items: - '' - id: 77 value: '1' inspection_id: 91 category_id: 868 val: 'Yes' unit: null type: boolean - anc: 'Bee colony > Brood > Status > ' name: Eggs type: boolean range: null items: - '' - id: 308 value: '1' inspection_id: 91 category_id: 270 val: 'Yes' unit: null type: boolean items: type: object tags: - Api\InspectionsController parameters: - in: path name: hive_id description: 'The hive to request inspections from.' example: repellat required: true schema: type: string /api/inspections/store: post: summary: "api/inspections POST\nRegister a new hive inspection the 'inspection' object. The object reflects only the general inspection data." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer fadeZvP658ac4hg3bk1VD6E' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\InspectionsController requestBody: required: true content: application/json: schema: type: object properties: date: type: date description: 'The (local time) date time of the inspection.' example: '2020-05-18 16:16' items: type: object description: 'An object of category id''s containing their inspected values (id''s in case of lists, otherwise numeric/textual values).' example: 547: 0 595: 1 845: '814' properties: [] hive_ids: type: array description: 'Array of Hive ids to which this inspection should be linked.' example: 42 items: type: string location_id: type: Location description: 'id to which this inspection should be linked.' example: '2' id: type: integer description: 'If provided, edit and do not create inspection. Required to edit the inspection.' example: 15 impression: type: integer description: 'Numeric impression value -1 (unfilled) to 1-3 (smileys).' example: -1 attention: type: integer description: 'Numeric impression value -1 (unfilled) to 0-1 (needs attention).' example: 1 reminder: type: string description: 'Textual value of the reminder fields.' example: 'This is an inspection reminder' reminder_date: type: date description: 'The (local time) date time for an optional reminder that can be fed to the users calender.' example: '2020-05-27 16:16' notes: type: string description: 'Textual value of the notes fields.' example: 'This is an inspection note' checklist_id: type: integer description: 'Id of the user checklist for generating this inspection.' example: 829 required: - date - items - hive_ids /api/locations: get: summary: 'Display a listing of the resource.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer kaEd6eg5bP61Zfhv3a8D4cV' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\LocationController post: summary: 'Store a newly created resource in storage.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer DabZdVv6kh13EgP48eac65f' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\LocationController requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: qui hive_type_id: type: integer description: '' example: 7 required: - name '/api/locations/{id}': get: summary: 'Display the specified resource.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer aaZ66bg158cEPD4Vhekdfv3' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\LocationController put: summary: 'Update the specified resource in storage.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer v6hVdEa8beafk364PcD51Zg' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\LocationController requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: provident hive_type_id: type: integer description: '' example: 2 required: - name delete: summary: 'Remove the specified resource from storage.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer vDd4ah38kefE5a1cb6ZVg6P' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\LocationController parameters: - in: path name: id description: 'The ID of the location.' example: 2 required: true schema: type: integer /api/sensors: post: summary: "api/sensors POST\nStore sensor measurement data (see BEEP sensor data API definition) from API, or TTN. See /sensors/measurement_types?locale=en which measurement types can be used to POST data to." description: '' parameters: - in: query name: key/data description: 'Measurement formatted as URL query: key=your_beep_device_key&t=18.4&t_i=34.5&weight_kg=57.348&h=58&bv=3.54' example: voluptas required: true schema: type: string description: 'Measurement formatted as URL query: key=your_beep_device_key&t=18.4&t_i=34.5&weight_kg=57.348&h=58&bv=3.54' example: voluptas - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\MeasurementController requestBody: required: true content: application/json: schema: type: object properties: key/data: type: json description: 'Measurement data as JSON: {"key":"your_beep_device_key", "t":18.4, t_i":34.5, "weight_kg":57.348, "h":58, "bv":3.54}' example: eum required: - key/data security: [] /api/lora_sensors: post: summary: "api/lora_sensors POST\nStore sensor measurement data (see BEEP sensor data API definition) from TTN or KPN (Simpoint)\nWhen Simpoint payload is supplied, the LoRa HEX to key/value pairs decoding is done within function $this->parse_ttn_payload()\nWhen TTN payload is supplied, the TTN HTTP integration decoder/converter is assumed to have already converted the payload from LoRa HEX to key/value conversion" description: '' parameters: - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\MeasurementController requestBody: required: true content: application/json: schema: type: object properties: key: type: string description: 'DEV EUI of the Device to enable storing sensor data' example: eos payload_raw: type: string description: 'TTN BEEP Measurement data in Base 64 encoded string' example: omnis payload_fields: type: json description: 'TTN Measurement data array' example: neque DevEUI_uplink: type: json description: 'KPN Measurement data array' example: dolorem required: - key security: [] /api/sensors/measurement_types: get: summary: "api/sensors/measurement_types GET\nRequest all currently available sensor measurement types that can be POSTed to" description: '' parameters: - in: query name: locale description: 'Two digit locale to get translated sensor measurement types.' example: en required: false schema: type: string description: 'Two digit locale to get translated sensor measurement types.' example: en - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '' content: application/json: schema: type: object example: t: Temperatuur h: Luchtvochtigheid p: Luchtdruk w: Weight l: Licht bv: Batterijvoltage w_v: 'W v' w_fl: 'W fl' w_fr: 'W fr' w_bl: 'W bl' w_br: 'W br' s_fan_4: 'S fan 4' s_fan_6: 'S fan 6' s_fan_9: 'S fan 9' s_fly_a: 'S fly a' s_tot: 'S tot' t_i: 'Temperatuur intern' bc_i: 'Bijen in' bc_o: 'Bijen uit' weight_kg: Gewicht weight_kg_corrected: 'Gewicht gecorrigeerd' rssi: Signaalsterkte snr: Signaal-ruisverhouding lat: Breedtegraad lon: Lengtegraad s_bin098_146Hz: 'S bin098 146Hz' s_bin146_195Hz: 'S bin146 195Hz' s_bin195_244Hz: 'S bin195 244Hz' s_bin244_293Hz: 'S bin244 293Hz' s_bin293_342Hz: 'S bin293 342Hz' s_bin342_391Hz: 'S bin342 391Hz' s_bin391_439Hz: 'S bin391 439Hz' s_bin439_488Hz: 'S bin439 488Hz' s_bin488_537Hz: 'S bin488 537Hz' s_bin537_586Hz: 'S bin537 586Hz' calibrating_weight: 'Calibrating weight' w_fl_kg_per_val: 'W fl kg per val' w_fr_kg_per_val: 'W fr kg per val' w_bl_kg_per_val: 'W bl kg per val' w_br_kg_per_val: 'W br kg per val' w_fl_offset: 'W fl offset' w_fr_offset: 'W fr offset' w_bl_offset: 'W bl offset' w_br_offset: 'W br offset' bc_tot: 'Bijen totaal' s_spl: 'S spl' h_i: 'H i' w_v_offset: 'W v offset' w_v_kg_per_val: 'W v kg per val' s_bin_0_201: 'S bin 0 201' s_bin_201_402: 'S bin 201 402' s_bin_402_602: 'S bin 402 602' s_bin_602_803: 'S bin 602 803' s_bin_803_1004: 'S bin 803 1004' s_bin_1004_1205: 'S bin 1004 1205' s_bin_1205_1406: 'S bin 1205 1406' s_bin_1406_1607: 'S bin 1406 1607' s_bin_1607_1807: 'S bin 1607 1807' s_bin_1807_2008: 'S bin 1807 2008' t_0: 'T 0' t_1: 'T 1' t_2: 'T 2' t_3: 'T 3' t_4: 'T 4' t_5: 'T 5' t_6: 'T 6' t_7: 'T 7' t_8: 'T 8' t_9: 'T 9' s_bin_122_173: 'S bin 122 173' s_bin_71_122: 'S bin 71 122' s_bin_173_224: 'S bin 173 224' s_bin_224_276: 'S bin 224 276' s_bin_276_327: 'S bin 276 327' s_bin_327_378: 'S bin 327 378' s_bin_378_429: 'S bin 378 429' s_bin_429_480: 'S bin 429 480' s_bin_480_532: 'S bin 480 532' s_bin_532_583: 'S bin 532 583' properties: t: type: string example: Temperatuur h: type: string example: Luchtvochtigheid p: type: string example: Luchtdruk w: type: string example: Weight l: type: string example: Licht bv: type: string example: Batterijvoltage w_v: type: string example: 'W v' w_fl: type: string example: 'W fl' w_fr: type: string example: 'W fr' w_bl: type: string example: 'W bl' w_br: type: string example: 'W br' s_fan_4: type: string example: 'S fan 4' s_fan_6: type: string example: 'S fan 6' s_fan_9: type: string example: 'S fan 9' s_fly_a: type: string example: 'S fly a' s_tot: type: string example: 'S tot' t_i: type: string example: 'Temperatuur intern' bc_i: type: string example: 'Bijen in' bc_o: type: string example: 'Bijen uit' weight_kg: type: string example: Gewicht weight_kg_corrected: type: string example: 'Gewicht gecorrigeerd' rssi: type: string example: Signaalsterkte snr: type: string example: Signaal-ruisverhouding lat: type: string example: Breedtegraad lon: type: string example: Lengtegraad s_bin098_146Hz: type: string example: 'S bin098 146Hz' s_bin146_195Hz: type: string example: 'S bin146 195Hz' s_bin195_244Hz: type: string example: 'S bin195 244Hz' s_bin244_293Hz: type: string example: 'S bin244 293Hz' s_bin293_342Hz: type: string example: 'S bin293 342Hz' s_bin342_391Hz: type: string example: 'S bin342 391Hz' s_bin391_439Hz: type: string example: 'S bin391 439Hz' s_bin439_488Hz: type: string example: 'S bin439 488Hz' s_bin488_537Hz: type: string example: 'S bin488 537Hz' s_bin537_586Hz: type: string example: 'S bin537 586Hz' calibrating_weight: type: string example: 'Calibrating weight' w_fl_kg_per_val: type: string example: 'W fl kg per val' w_fr_kg_per_val: type: string example: 'W fr kg per val' w_bl_kg_per_val: type: string example: 'W bl kg per val' w_br_kg_per_val: type: string example: 'W br kg per val' w_fl_offset: type: string example: 'W fl offset' w_fr_offset: type: string example: 'W fr offset' w_bl_offset: type: string example: 'W bl offset' w_br_offset: type: string example: 'W br offset' bc_tot: type: string example: 'Bijen totaal' s_spl: type: string example: 'S spl' h_i: type: string example: 'H i' w_v_offset: type: string example: 'W v offset' w_v_kg_per_val: type: string example: 'W v kg per val' s_bin_0_201: type: string example: 'S bin 0 201' s_bin_201_402: type: string example: 'S bin 201 402' s_bin_402_602: type: string example: 'S bin 402 602' s_bin_602_803: type: string example: 'S bin 602 803' s_bin_803_1004: type: string example: 'S bin 803 1004' s_bin_1004_1205: type: string example: 'S bin 1004 1205' s_bin_1205_1406: type: string example: 'S bin 1205 1406' s_bin_1406_1607: type: string example: 'S bin 1406 1607' s_bin_1607_1807: type: string example: 'S bin 1607 1807' s_bin_1807_2008: type: string example: 'S bin 1807 2008' t_0: type: string example: 'T 0' t_1: type: string example: 'T 1' t_2: type: string example: 'T 2' t_3: type: string example: 'T 3' t_4: type: string example: 'T 4' t_5: type: string example: 'T 5' t_6: type: string example: 'T 6' t_7: type: string example: 'T 7' t_8: type: string example: 'T 8' t_9: type: string example: 'T 9' s_bin_122_173: type: string example: 'S bin 122 173' s_bin_71_122: type: string example: 'S bin 71 122' s_bin_173_224: type: string example: 'S bin 173 224' s_bin_224_276: type: string example: 'S bin 224 276' s_bin_276_327: type: string example: 'S bin 276 327' s_bin_327_378: type: string example: 'S bin 327 378' s_bin_378_429: type: string example: 'S bin 378 429' s_bin_429_480: type: string example: 'S bin 429 480' s_bin_480_532: type: string example: 'S bin 480 532' s_bin_532_583: type: string example: 'S bin 532 583' tags: - Api\MeasurementController security: [] /api/sensors_auth: post: summary: "api/sensors POST\nStore sensor measurement data (see BEEP sensor data API definition) from API, or TTN. See /sensors/measurement_types?locale=en which measurement types can be used to POST data to." description: '' parameters: - in: query name: key/data description: 'Measurement formatted as URL query: key=your_beep_device_key&t=18.4&t_i=34.5&weight_kg=57.348&h=58&bv=3.54' example: hic required: true schema: type: string description: 'Measurement formatted as URL query: key=your_beep_device_key&t=18.4&t_i=34.5&weight_kg=57.348&h=58&bv=3.54' example: hic - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\MeasurementController requestBody: required: true content: application/json: schema: type: object properties: key/data: type: json description: 'Measurement data as JSON: {"key":"your_beep_device_key", "t":18.4, t_i":34.5, "weight_kg":57.348, "h":58, "bv":3.54}' example: quis required: - key/data security: [] /api/lora_sensors_auth: post: summary: "api/lora_sensors POST\nStore sensor measurement data (see BEEP sensor data API definition) from TTN or KPN (Simpoint)\nWhen Simpoint payload is supplied, the LoRa HEX to key/value pairs decoding is done within function $this->parse_ttn_payload()\nWhen TTN payload is supplied, the TTN HTTP integration decoder/converter is assumed to have already converted the payload from LoRa HEX to key/value conversion" description: '' parameters: - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\MeasurementController requestBody: required: true content: application/json: schema: type: object properties: key: type: string description: 'DEV EUI of the Device to enable storing sensor data' example: doloribus payload_raw: type: string description: 'TTN BEEP Measurement data in Base 64 encoded string' example: quis payload_fields: type: json description: 'TTN Measurement data array' example: quo DevEUI_uplink: type: json description: 'KPN Measurement data array' example: consequatur required: - key security: [] /api/sensors/measurements: get: summary: "api/sensors/measurements GET\nRequest all sensor measurements from a certain interval (hour, day, week, month, year) and index (0=until now, 1=previous interval, etc.)" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 614Za6Vg58ak3vDhbcPefEd' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\MeasurementController requestBody: required: false content: application/json: schema: type: object properties: id: type: integer description: 'ID to look up the sensor (Device)' example: 10 key: type: string description: 'DEV EUI to look up the sensor (Device)' example: dolores hive_id: type: integer description: 'Hive ID to look up the sensor (Device)' example: 6 start: type: date description: 'Date for start of measurements. Required without interval & index.' example: '2020-05-27 16:16' end: type: date description: 'Date for end of measurements. Required without interval & index.' example: '2020-05-30 00:00' index: type: integer description: 'Interval index (>=0; 0=until now, 1=previous interval, etc.). Default: 0.' example: 5 interval: type: string description: 'Data interval for interpolation of measurement values: hour (2min), day (10min), week (1 hour), month (3 hours), year (1 day). Default: day.' example: cupiditate timeGroup: type: string description: '' example: quibusdam names: type: string description: 'comma separated list of Measurement abbreviations to filter request data (weight_kg, t, h, etc.)' example: officia weather: type: integer description: 'Load corresponding weather data from the weather database (1) or not (0).' example: 1 timezone: type: string description: 'Provide the front-end timezone to correct the time from UTC to front-end time.' example: Europe/Amsterdam relative_interval: type: integer description: 'Load data from the selected interval relative to current time (1), or load data in absolute intervals (from start-end of hour/day/week/etc) (0). Default: 0.' example: 9 /api/sensors/lastvalues: get: summary: "api/sensors/lastvalues GET\nRequest last measurement values of all sensor measurements from a Device" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer he8E64D1cda536ZVgfPvabk' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\MeasurementController requestBody: required: false content: application/json: schema: type: object properties: key: type: string description: 'DEV EUI to look up the Device' example: cupiditate id: type: integer description: 'ID to look up the Device' example: 7 hive_id: type: integer description: 'Hive ID to look up the Device' example: 2 /api/sensors/lastweight: get: summary: "api/sensors/lastweight GET\nRequest last weight related measurement values from a sensor (Device), used by legacy webapp to show calibration data: ['w_fl', 'w_fr', 'w_bl', 'w_br', 'w_v', 'weight_kg', 'weight_kg_corrected', 'calibrating_weight', 'w_v_offset', 'w_v_kg_per_val', 'w_fl_offset', 'w_fr_offset', 'w_bl_offset', 'w_br_offset']" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 8a431fZvPE6aVc5hebk6Ddg' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\MeasurementController requestBody: required: false content: application/json: schema: type: object properties: key: type: string description: 'DEV EUI to look up the sensor (Device)' example: et id: type: integer description: 'ID to look up the sensor (Device)' example: 18 hive_id: type: integer description: 'Hive ID to look up the sensor (Device)' example: 20 /api/sensors/calibrateweight: post: summary: "api/sensors/calibrateweight\nLegacy method, used by legacy webapp to store weight calibration value e.g.[w_v_kg_per_val] in Influx database, to lookup and calculate [weight_kg] at incoming measurement value storage" description: "At the next measurement coming in, calibrate each weight sensor with it's part of a given weight.\nBecause the measurements can come in only each hour/ 3hrs, set a value to trigger the calculation on next measurement\n\n1. If $next_measurement == true: save 'calibrating' = true in Influx with the sensor key\n2. If $next_measurement == false: save 'calibrating' = false in Influx with the sensor key and...\n3. Get the last measured weight values for this sensor key,\n Divide the given weight (in kg) with the amount of sensor values > 1.0 (assuming the weight is evenly distributed)\n Calculate the multiplier per sensor by dividing the multiplier = weight_part / (value - offset)\n Save the multiplier as $device_name.'_kg_per_val' in Influx" parameters: - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\MeasurementController requestBody: required: false content: application/json: schema: type: object properties: next_measurement: type: boolean description: '' example: false weight_kg: type: number description: 'Het value veld is verplicht wanneer next_measurement is true.' example: 1.1051 security: [] /api/sensors/offsetweight: post: summary: '' description: '' parameters: - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\MeasurementController security: [] /api/sensors/measurement_types_available: get: summary: '' description: '' parameters: - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\MeasurementController security: [] /api/sensors/flashlog: post: summary: "api/sensors/flashlog\nPOST data from BEEP base fw 1.5.0+ FLASH log (with timestamp), interpret data and store in InlfuxDB (overwriting existing data). BEEP base BLE cmd: when the response is 200 OK and erase_mx_flash > -1, provide the ERASE_MX_FLASH BLE command (0x21) to the BEEP base with the last byte being the HEX value of the erase_mx_flash value (0 = 0x00, 1 = 0x01, i.e.0x2100, or 0x2101, i.e. erase_type:\"fatfs\", or erase_type:\"full\")" description: '' parameters: - in: query name: show description: '1 for displaying info in result JSON, 0 for not displaying (default).' example: 19 required: false schema: type: integer description: '1 for displaying info in result JSON, 0 for not displaying (default).' example: 19 - in: query name: save description: '1 for saving the data to a file (default), 0 for not save log file.' example: 9 required: false schema: type: integer description: '1 for saving the data to a file (default), 0 for not save log file.' example: 9 - in: query name: fill description: '1 for filling data gaps in the database, 0 for not filling gaps (default).' example: 6 required: false schema: type: integer description: '1 for filling data gaps in the database, 0 for not filling gaps (default).' example: 6 - in: query name: log_size_bytes description: '0x22 decimal result of log size requested from BEEP base.' example: 12 required: false schema: type: integer description: '0x22 decimal result of log size requested from BEEP base.' example: 12 - in: header name: Authorization description: '' example: 'Bearer VD8fgc5PEa16dheZk4bav36' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '' content: text/plain: schema: type: string example: "{\n\"lines_received\": 20039,\n\"bytes_received\": 9872346,\n\"log_saved\": true,\n\"log_parsed\": false,\n\"log_messages\":29387823\n\"erase_mx_flash\": -1,\n\"erase\":false,\n\"erase_type\":\"fatfs\"\n}" tags: - Api\MeasurementController requestBody: required: false content: application/json: schema: type: object properties: id: type: integer description: 'Device id to update. (Required without key and hardware_id)' example: 18 key: type: string description: 'DEV EUI of the sensor to enable storing sensor data incoming on the api/sensors or api/lora_sensors endpoint. (Required without id and hardware_id)' example: error hardware_id: type: string description: 'Hardware id of the device as device name in TTN. (Required without id and key)' example: consequatur data: type: string description: 'MX_FLASH_LOG Hexadecimal string lines (new line) separated, with many rows of log data, or text file binary with all data inside.' example: dolore file: type: binary description: 'File with MX_FLASH_LOG Hexadecimal string lines (new line) separated, with many rows of log data, or text file binary with all data inside.' example: ut '/api/sensors/decode/p/{port}/pl/{payload}': get: summary: '' description: '' parameters: - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\MeasurementController security: [] parameters: - in: path name: port description: '' example: nihil required: true schema: type: string - in: path name: payload description: '' example: hic required: true schema: type: string /api/research: get: summary: 'Display a listing of the resource.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer dD3fkbgEevaP6Z4a6c1hV58' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\ResearchController '/api/research/{id}/add_consent': post: summary: 'Update the specified resource in storage.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer f6bPD68VEvaka5e43dg1cZh' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\ResearchController parameters: - in: path name: id description: 'The ID of the research.' example: 13 required: true schema: type: integer '/api/research/{id}/remove_consent': post: summary: '' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer fak45ed3EVbDPgcZ86h6av1' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\ResearchController parameters: - in: path name: id description: 'The ID of the research.' example: 16 required: true schema: type: integer '/api/research/{id}/edit/{consent_id}': patch: summary: '' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 6a4vZg1P36fVh5dbE8kDaec' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\ResearchController parameters: - in: path name: id description: 'The ID of the research.' example: 18 required: true schema: type: integer - in: path name: consent_id description: 'The ID of the consent.' example: perferendis required: true schema: type: string '/api/research/{id}/delete/{consent_id}': delete: summary: '' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 3Egb6hc4dkeaafD5VPv6Z81' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\ResearchController parameters: - in: path name: id description: 'The ID of the research.' example: 4 required: true schema: type: integer - in: path name: consent_id description: 'The ID of the consent.' example: possimus required: true schema: type: string /api/researchdata: get: summary: "api/researchdata GET\nList all available Researches" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer vZVk48ac61fg3dEDa6P5ehb' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '' content: application/json: schema: type: array items: type: object example: - id: 1 created_at: '2020-02-25 03:01:57' updated_at: '2020-11-13 17:08:31' name: B-GOOD url: 'https://b-good-project.eu/' description: 'B-GOOD has the overall goal to provide guidance for beekeepers and help them make better and more informed decisions.' type: research-b-good institution: 'Wageningen University & Research' type_of_data_used: 'Hive inspections, hive settings, BEEP base measurement data' start_date: '2019-07-01 00:00:00' end_date: '2023-06-30 00:00:00' image_id: 1 consent: true consent_history: - id: 185 created_at: '2020-11-12 22:28:09' updated_at: '2020-06-12 22:28:00' user_id: 1 research_id: 1 consent: 1 consent_location_ids: null consent_hive_ids: null consent_sensor_ids: null - id: 1 created_at: '2020-02-25 03:02:23' updated_at: '2020-05-27 03:03:00' user_id: 1 research_id: 1 consent: 0 consent_location_ids: null consent_hive_ids: null consent_sensor_ids: null - id: 97 created_at: '2020-05-14 16:24:41' updated_at: '2020-03-14 16:24:00' user_id: 1 research_id: 1 consent: 1 consent_location_ids: null consent_hive_ids: null consent_sensor_ids: null checklist_names: - '1 Winter' - '2 Varroa' - '3 Summer+' - '4 Summer' - '5 Health' thumb_url: /storage/users/1/thumbs/research/6LJEp35dodWWtfxnm3xfRnL05qvvJrHbn8IXAJqNCFZj2vFjwyLXbmWscKVz.jpg image: id: 1 created_at: '2020-02-25 03:01:57' updated_at: '2020-02-25 03:01:57' filename: 6LJEp35dodWWtfxnm3xfRnL05qvvJrHbn8IXAJqNCFZj2vFjwyLXbmWscKVz.jpg image_url: /storage/users/1/images/research/6LJEp35dodWWtfxnm3xfRnL05qvvJrHbn8IXAJqNCFZj2vFjwyLXbmWscKVz.jpg thumb_url: /storage/users/1/thumbs/research/6LJEp35dodWWtfxnm3xfRnL05qvvJrHbn8IXAJqNCFZj2vFjwyLXbmWscKVz.jpg description: 'B-GOOD has the overall goal to provide guidance for beekeepers and help them make better and more informed decisions.' type: research height: 1271 width: 1271 size_kb: 51 date: '2020-02-25 03:01:57' hive_id: null category_id: null inspection_id: null tags: - Api\ResearchDataController '/api/researchdata/{id}': get: summary: "api/researchdata/{id} GET\nList one Research by id with list of consent_users" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer D5f1ZkgbacePVv64ad8h3E6' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '' content: application/json: schema: type: object example: research: id: 1 created_at: '2020-02-25 03:01:57' updated_at: '2020-11-18 10:33:23' name: B-GOOD url: 'https://b-good-project.eu/' description: 'B-GOOD has the overall goal to provide guidance for beekeepers and help them make better and more informed decisions.' type: research-b-good institution: 'Wageningen University & Research' type_of_data_used: 'Hive inspections, hive settings, BEEP base measurement data' start_date: '2019-07-01 00:00:00' end_date: '2023-06-30 00:00:00' image_id: 1 consent: true consent_history: - id: 185 created_at: '2020-11-12 22:28:09' updated_at: '2020-06-12 22:28:00' user_id: 1 research_id: 1 consent: 1 consent_location_ids: null consent_hive_ids: null consent_sensor_ids: null - id: 1 created_at: '2020-02-25 03:02:23' updated_at: '2020-05-27 03:03:00' user_id: 1 research_id: 1 consent: 0 consent_location_ids: null consent_hive_ids: null consent_sensor_ids: null - id: 97 created_at: '2020-05-14 16:24:41' updated_at: '2020-03-14 16:24:00' user_id: 1 research_id: 1 consent: 1 consent_location_ids: null consent_hive_ids: null consent_sensor_ids: null checklist_names: - '1 Winter' - '2 Varroa' - '3 Summer+' - '4 Summer' - '5 Health' thumb_url: /storage/users/1/thumbs/research/6LJEp35dodWWtfxnm3xfRnL05qvvJrHbn8IXAJqNCFZj2vFjwyLXbmWscKVz.jpg image: id: 1 created_at: '2020-02-25 03:01:57' updated_at: '2020-02-25 03:01:57' filename: 6LJEp35dodWWtfxnm3xfRnL05qvvJrHbn8IXAJqNCFZj2vFjwyLXbmWscKVz.jpg image_url: /storage/users/1/images/research/6LJEp35dodWWtfxnm3xfRnL05qvvJrHbn8IXAJqNCFZj2vFjwyLXbmWscKVz.jpg thumb_url: /storage/users/1/thumbs/research/6LJEp35dodWWtfxnm3xfRnL05qvvJrHbn8IXAJqNCFZj2vFjwyLXbmWscKVz.jpg description: 'B-GOOD has the overall goal to provide guidance for beekeepers and help them make better and more informed decisions.' type: research height: 1271 width: 1271 size_kb: 51 date: '2020-02-25 03:01:57' hive_id: null category_id: null inspection_id: null consent_users: - id: 1 name: Beep email: pim@beep.nl created_at: '2017-07-14 03:34:10' updated_at: '2020-05-27 03:03:00' last_login: '2020-11-18 10:32:16' locale: null consent: 0 - id: 2371 name: app@beep.nl email: app@beep.nl created_at: '2019-10-24 17:15:55' updated_at: '2020-02-25 11:46:59' last_login: '2020-08-20 18:24:22' locale: null consent: 0 - id: 1 name: Beep email: pim@beep.nl created_at: '2017-07-14 03:34:10' updated_at: '2020-06-12 22:28:00' last_login: '2020-11-18 10:32:16' locale: null consent: 1 properties: research: type: object example: id: 1 created_at: '2020-02-25 03:01:57' updated_at: '2020-11-18 10:33:23' name: B-GOOD url: 'https://b-good-project.eu/' description: 'B-GOOD has the overall goal to provide guidance for beekeepers and help them make better and more informed decisions.' type: research-b-good institution: 'Wageningen University & Research' type_of_data_used: 'Hive inspections, hive settings, BEEP base measurement data' start_date: '2019-07-01 00:00:00' end_date: '2023-06-30 00:00:00' image_id: 1 consent: true consent_history: - id: 185 created_at: '2020-11-12 22:28:09' updated_at: '2020-06-12 22:28:00' user_id: 1 research_id: 1 consent: 1 consent_location_ids: null consent_hive_ids: null consent_sensor_ids: null - id: 1 created_at: '2020-02-25 03:02:23' updated_at: '2020-05-27 03:03:00' user_id: 1 research_id: 1 consent: 0 consent_location_ids: null consent_hive_ids: null consent_sensor_ids: null - id: 97 created_at: '2020-05-14 16:24:41' updated_at: '2020-03-14 16:24:00' user_id: 1 research_id: 1 consent: 1 consent_location_ids: null consent_hive_ids: null consent_sensor_ids: null checklist_names: - '1 Winter' - '2 Varroa' - '3 Summer+' - '4 Summer' - '5 Health' thumb_url: /storage/users/1/thumbs/research/6LJEp35dodWWtfxnm3xfRnL05qvvJrHbn8IXAJqNCFZj2vFjwyLXbmWscKVz.jpg image: id: 1 created_at: '2020-02-25 03:01:57' updated_at: '2020-02-25 03:01:57' filename: 6LJEp35dodWWtfxnm3xfRnL05qvvJrHbn8IXAJqNCFZj2vFjwyLXbmWscKVz.jpg image_url: /storage/users/1/images/research/6LJEp35dodWWtfxnm3xfRnL05qvvJrHbn8IXAJqNCFZj2vFjwyLXbmWscKVz.jpg thumb_url: /storage/users/1/thumbs/research/6LJEp35dodWWtfxnm3xfRnL05qvvJrHbn8IXAJqNCFZj2vFjwyLXbmWscKVz.jpg description: 'B-GOOD has the overall goal to provide guidance for beekeepers and help them make better and more informed decisions.' type: research height: 1271 width: 1271 size_kb: 51 date: '2020-02-25 03:01:57' hive_id: null category_id: null inspection_id: null consent_users: type: array example: - id: 1 name: Beep email: pim@beep.nl created_at: '2017-07-14 03:34:10' updated_at: '2020-05-27 03:03:00' last_login: '2020-11-18 10:32:16' locale: null consent: 0 - id: 2371 name: app@beep.nl email: app@beep.nl created_at: '2019-10-24 17:15:55' updated_at: '2020-02-25 11:46:59' last_login: '2020-08-20 18:24:22' locale: null consent: 0 - id: 1 name: Beep email: pim@beep.nl created_at: '2017-07-14 03:34:10' updated_at: '2020-06-12 22:28:00' last_login: '2020-11-18 10:32:16' locale: null consent: 1 items: type: object tags: - Api\ResearchDataController parameters: - in: path name: id description: 'The research ID to request data from.' example: consequatur required: true schema: type: string '/api/researchdata/{id}/user/{user_id}/{item}': get: summary: "api/researchdata/{id}/user/{user_id}/{item} GET\nList all user 'item' data within the consent=1 periods of a specific user within a Research. The 'item' field indicates the type of user data (apiaries/hives/devices/flashlogs/inspections/measurements/weather) to request within the research (which the user gave consent for to use). Example: inspectionsResponse: api/researchdata/1/user/1/inspections." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 1EZaD6g8bP3v6d5ef4caVkh' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '' content: application/json: schema: type: array items: type: object example: - id: 35211 notes: test reminder: null reminder_date: null impression: 2 attention: 1 created_at: '2020-03-26 18:28:00' checklist_id: 798 image_id: null owner: true thumb_url: null hive_id: 280 items: [] - id: 40162 notes: 'Input Liebefeld' reminder: null reminder_date: null impression: null attention: null created_at: '2020-04-24 11:03:00' checklist_id: 3206 image_id: null owner: true thumb_url: null hive_id: 280 items: - id: 326538 value: '0.6' inspection_id: 40162 category_id: 977 val: '0.6' unit: 'x 25cm2' type: square_25cm2 - id: 326539 value: '4' inspection_id: 40162 category_id: 978 val: '4' unit: 'x 25cm2' type: square_25cm2 - id: 326540 value: '2' inspection_id: 40162 category_id: 979 val: '2' unit: 'x 25cm2' type: square_25cm2 - id: 326541 value: '4' inspection_id: 40162 category_id: 980 val: '4' unit: 'x 25cm2' type: square_25cm2 - id: 326542 value: '3' inspection_id: 40162 category_id: 981 val: '3' unit: 'x 25cm2' type: square_25cm2 - id: 326543 value: '581' inspection_id: 40162 category_id: 982 val: '581' unit: bzz type: number_positive - id: 326544 value: '5' inspection_id: 40162 category_id: 984 val: '5' unit: 'x 25cm2' type: square_25cm2 - id: 326545 value: '1' inspection_id: 40162 category_id: 985 val: '1' unit: 'x 25cm2' type: square_25cm2 - id: 326546 value: '4' inspection_id: 40162 category_id: 987 val: '4' unit: 'x 25cm2' type: square_25cm2 - id: 326547 value: '5' inspection_id: 40162 category_id: 988 val: '5' unit: 'x 25cm2' type: square_25cm2 - id: 326548 value: '4' inspection_id: 40162 category_id: 989 val: '4' unit: 'x 25cm2' type: square_25cm2 - id: 326549 value: '2' inspection_id: 40162 category_id: 990 val: '2' unit: 'x 25cm2' type: square_25cm2 - id: 326550 value: '2' inspection_id: 40162 category_id: 991 val: '2' unit: 'x 25cm2' type: square_25cm2 - id: 326551 value: '3' inspection_id: 40162 category_id: 992 val: '3' unit: 'x 25cm2' type: square_25cm2 - id: 326552 value: '3' inspection_id: 40162 category_id: 993 val: '3' unit: 'x 25cm2' type: square_25cm2 - id: 326553 value: '6' inspection_id: 40162 category_id: 995 val: '6' unit: 'x 25cm2' type: square_25cm2 - id: 326554 value: '2' inspection_id: 40162 category_id: 996 val: '2' unit: 'x 25cm2' type: square_25cm2 - id: 326555 value: '2' inspection_id: 40162 category_id: 997 val: '2' unit: 'x 25cm2' type: square_25cm2 - id: 326556 value: '2' inspection_id: 40162 category_id: 998 val: '2' unit: 'x 25cm2' type: square_25cm2 - id: 326557 value: '2' inspection_id: 40162 category_id: 999 val: '2' unit: 'x 25cm2' type: square_25cm2 - id: 326558 value: '2' inspection_id: 40162 category_id: 1000 val: '2' unit: 'x 25cm2' type: square_25cm2 - id: 326559 value: '2' inspection_id: 40162 category_id: 1001 val: '2' unit: 'x 25cm2' type: square_25cm2 - id: 326560 value: '8' inspection_id: 40162 category_id: 1163 val: '8' unit: 'x 25cm2' type: square_25cm2 - id: 326561 value: '4' inspection_id: 40162 category_id: 1164 val: '4' unit: 'x 25cm2' type: square_25cm2 - id: 326562 value: '2' inspection_id: 40162 category_id: 1165 val: '2' unit: 'x 25cm2' type: square_25cm2 - id: 326563 value: '6' inspection_id: 40162 category_id: 1166 val: '6' unit: 'x 25cm2' type: square_25cm2 - id: 326564 value: '2' inspection_id: 40162 category_id: 1167 val: '2' unit: 'x 25cm2' type: square_25cm2 - id: 326565 value: '2' inspection_id: 40162 category_id: 1168 val: '2' unit: 'x 25cm2' type: square_25cm2 - id: 326566 value: '3' inspection_id: 40162 category_id: 1169 val: '3' unit: 'x 25cm2' type: square_25cm2 - id: 40163 notes: 'Brood photograph' reminder: null reminder_date: null impression: null attention: null created_at: '2020-04-24 11:07:00' checklist_id: 3206 image_id: null owner: true thumb_url: null hive_id: 280 items: - id: 326567 value: '1' inspection_id: 40163 category_id: 399 val: Ja unit: null type: boolean - id: 326568 value: 'https://assets.beep.nl/users/1/thumbs/inspection/jIcycTYnO8zYq6SHCvAwPHb97BDLFkZaDmfZUop5.png' inspection_id: 40163 category_id: 973 val: 'https://assets.beep.nl/users/1/thumbs/inspection/jIcycTYnO8zYq6SHCvAwPHb97BDLFkZaDmfZUop5.png' unit: null type: image - id: 68477 notes: null reminder: null reminder_date: null impression: 3 attention: 1 created_at: '2020-10-23 12:43:00' checklist_id: 3206 image_id: null owner: true thumb_url: null hive_id: 281 items: [] - id: 68478 notes: 'Hive change' reminder: null reminder_date: null impression: null attention: null created_at: '2020-10-23 13:12:33' checklist_id: null image_id: null owner: true thumb_url: null hive_id: 281 items: - id: 522496 value: '2' inspection_id: 68478 category_id: 85 val: '2' unit: null type: number_positive - id: 522497 value: '2' inspection_id: 68478 category_id: 87 val: '2' unit: null type: number - id: 522498 value: '10' inspection_id: 68478 category_id: 89 val: '10' unit: null type: number_positive tags: - Api\ResearchDataController requestBody: required: false content: application/json: schema: type: object properties: date_start: type: datetime description: 'The date in ''YYYY-MM-DD HH:mm:ss'' format (2020-01-01 00:00:00) to request data from (default is beginning of research, or earlier (except inspections and measurements).' example: '2020-01-01 00:00:00' date_until: type: datetime description: 'The date in ''YYYY-MM-DD HH:mm:ss'' format (2020-09-29 23:59:59) to request data until (default is until the end of the user consent, or research end).' example: '2020-09-29 23:59:59' device_id: type: integer description: 'The device_id to filter the measurements on (next to date_start and date_until).' example: 1 precision: type: string description: 'Specifies the optional InfluxDB format/precision (rfc3339/h/m/s/ms/u) of the timestamp of the measurements and weather data: rfc3339 (YYYY-MM-DDTHH:MM:SS.nnnnnnnnnZ), h (hours), m (minutes), s (seconds), ms (milliseconds), u (microseconds). Precision defaults to rfc3339.' example: rfc3339 parameters: - in: path name: id description: 'The research ID to request data from.' example: '1' required: true schema: type: string - in: path name: user_id description: 'The user id to request data from.' example: '1' required: true schema: type: string - in: path name: item description: 'The type of user data (apiaries/hives/devices/inspections/measurements) to request within the research (which the user gave consent for to use).' example: inspections required: true schema: type: string /api/samplecode: get: summary: 'Display a listing of the resource.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer v4EcaDkg1ZdV86eh56bPfa3' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\SampleCodeController post: summary: 'Store a newly created resource in storage.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer fEkech8g6a4Zb15Va6Pd3Dv' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\SampleCodeController delete: summary: 'Remove the specified resource from storage.' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer hPagZ4c65V6Evk8e1aDdb3f' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\SampleCodeController '/api/samplecode/{id}': get: summary: 'Show not used' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 16aE3DVkh468vZdgcPfea5b' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\SampleCodeController put: summary: 'Update not used' description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer c8EZagkeh6Pb63vfdV41D5a' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\SampleCodeController parameters: - in: path name: id description: 'The ID of the samplecode.' example: 1 required: true schema: type: integer /api/sensordefinition: get: summary: "api/sensordefinition GET\nDisplay a listing of all sensordefinitions that belong to a device" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer gk6ae8PvdD6Z154bacE3Vfh' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\SensorDefinitionController requestBody: required: false content: application/json: schema: type: object properties: device_id: type: integer description: 'Device ID that the Sensordefinition belongs to. Required if hardware_id, and device_hardware_id are not set.' example: 17 hardware_id: type: string description: 'Device hardware ID that the Sensordefinition belongs to. Required if device_id, and device_hardware_id are not set.' example: qui device_hardware_id: type: string description: 'Device hardware ID that the Sensordefinition belongs to. Required if hardware_id, and device_id are not set.' example: fuga input_measurement_abbreviation: type: string description: 'Filter sensordefinitions by provided input abbreviation.' example: aut limit: type: integer description: 'If input_abbr is set, limit the amount of results provided by more than 1 to get all historic sensordefinitions of this type.' example: 17 post: summary: "api/sensordefinition POST\nStore a newly created sensordefinition" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 8kga6h4eZ6v35PDVcbfa1dE' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\SensorDefinitionController requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'Name of the sensorinstance (e.g. temperature frame 1)' example: sequi inside: type: boolean description: 'True is measured inside, false if measured outside' example: false offset: type: number description: 'Measurement value that defines 0' example: 3.596971 multiplier: type: number description: 'Amount of units (calibration figure) per delta Measurement value to multiply withy (value - offset)' example: 606156321.91655 input_measurement_id: type: integer description: 'Measurement that represents the input Measurement value (e.g. 5, 3).' example: 5 input_measurement_abbreviation: type: string description: 'Abbreviation of the Measurement that represents the input value (e.g. w_v, or t_i).' example: w_v output_measurement_id: type: integer description: 'Measurement that represents the output Measurement value (e.g. 6, 3).' example: 6 output_measurement_abbreviation: type: string description: 'Abbreviation of the Measurement that represents the output (calculated with (raw_value - offset) * multiplier) value (e.g. weight_kg, or t_i),' example: t_i device_id: type: integer description: 'Device ID that the Sensordefinition belongs to. Required if hardware_id, and device_hardware_id are not set.' example: 3 hardware_id: type: string description: 'Device hardware ID that the Sensordefinition belongs to. Required if device_id, and device_hardware_id are not set.' example: rerum device_hardware_id: type: string description: 'Device hardware ID that the Sensordefinition belongs to. Required if hardware_id, and device_id are not set.' example: occaecati '/api/sensordefinition/{id}': get: summary: "api/sensordefinition/{id} GET\nDisplay the specified sensordefinition" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer b3c6aEZP8dVk5avehD14g6f' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\SensorDefinitionController requestBody: required: false content: application/json: schema: type: object properties: device_id: type: integer description: 'Device ID that the Sensordefinition belongs to. Required if hardware_id, and device_hardware_id are not set.' example: 19 hardware_id: type: string description: 'Device hardware ID that the Sensordefinition belongs to. Required if device_id, and device_hardware_id are not set.' example: iure device_hardware_id: type: string description: 'Device hardware ID that the Sensordefinition belongs to. Required if hardware_id, and device_id are not set.' example: ipsum put: summary: "api/sensordefinition/{id} PATCH\nUpdate the specified sensordefinition" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer aevhfZa58DE316cbP46Vdkg' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\SensorDefinitionController requestBody: required: false content: application/json: schema: type: object properties: device_id: type: integer description: 'Device ID that the Sensordefinition belongs to. Required if hardware_id, and device_hardware_id are not set.' example: 5 hardware_id: type: string description: 'Device hardware ID that the Sensordefinition belongs to. Required if device_id, and device_hardware_id are not set.' example: vero device_hardware_id: type: string description: 'Device hardware ID that the Sensordefinition belongs to. Required if hardware_id, and device_id are not set.' example: consequuntur delete: summary: "api/sensordefinition/{id} DELETE\nRemove the specified sensordefinition" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer fhPa5ckvZD3Ed6aV481bg6e' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\SensorDefinitionController requestBody: required: false content: application/json: schema: type: object properties: device_id: type: integer description: 'Device ID that the Sensordefinition belongs to. Required if hardware_id, and device_hardware_id are not set.' example: 3 hardware_id: type: string description: 'Device hardware ID that the Sensordefinition belongs to. Required if device_id, and device_hardware_id are not set.' example: voluptatum device_hardware_id: type: string description: 'Device hardware ID that the Sensordefinition belongs to. Required if hardware_id, and device_id are not set.' example: omnis parameters: - in: path name: id description: 'Sensordefinition ID' example: et required: true schema: type: string /api/taxonomy/lists: get: summary: "api/taxonomy/lists\nList of current state of the standard categories." description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 5Z3Pdf64cev6VaEhak81bgD' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\TaxonomyController /api/taxonomy/taxonomy: get: summary: "api/taxonomy/taxonomy\nList of current state of the standard categories, translated, unordered/ordered in hierachy/flat." description: '' parameters: - in: query name: locale description: 'Two character language code to translate taxonomy' example: ab required: false schema: type: string description: 'Two character language code to translate taxonomy' example: ab - in: query name: flat description: 'In hierachy (default: true)' example: true required: false schema: type: boolean description: 'In hierachy (default: true)' example: true - in: query name: order description: 'Ordered (default: false)' example: false required: false schema: type: boolean description: 'Ordered (default: false)' example: false - in: header name: Authorization description: '' example: 'Bearer V14Ega3kZhPD866ecvab5fd' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Api\TaxonomyController /api/login: post: summary: "api/login\nLogin via login form" description: '' parameters: - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '' content: application/json: schema: type: object example: id: 1317 name: test@test.com email: test@test.com avatar: default.jpg api_token: 1snu2aRRiwQNl2Tul567hLF0XpKuZO8hqkgXU4GvjzZ3f3pOCiDPFbBDea7W created_at: '2018-12-30 23:57:35' updated_at: '2020-01-09 16:31:32' last_login: '2020-01-09 16:31:32' policy_accepted: beep_terms_2018_05_25_avg_v1 email_verified_at: '2018-05-25 00:00:00' properties: id: type: integer example: 1317 name: type: string example: test@test.com email: type: string example: test@test.com avatar: type: string example: default.jpg api_token: type: string example: 1snu2aRRiwQNl2Tul567hLF0XpKuZO8hqkgXU4GvjzZ3f3pOCiDPFbBDea7W created_at: type: string example: '2018-12-30 23:57:35' updated_at: type: string example: '2020-01-09 16:31:32' last_login: type: string example: '2020-01-09 16:31:32' policy_accepted: type: string example: beep_terms_2018_05_25_avg_v1 email_verified_at: type: string example: '2018-05-25 00:00:00' tags: - Api\UserController requestBody: required: true content: application/json: schema: type: object properties: email: type: string description: 'Email address of the user.' example: test@test.com password: type: string description: 'Password of the user.' example: testtest required: - email - password security: [] /api/authenticate: post: summary: "api/authenticate\nAuthorize a user and login with an api_token. Used for persistent login in webapp." description: 'Header parameter with Bearer [api_token] from the user object. Example: Bearer 1snu2aRRiwQNl2Tul5F0XpKuZO8hqkgXU4GvjzZ3f3pOCiDPFbBDea7W' parameters: - in: header name: Authorization description: '' example: 'Bearer bE8Zg5aP6dV6vDkfhca4e13' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '' content: application/json: schema: type: object example: id: 1317 name: test@test.com email: test@test.com avatar: default.jpg api_token: 1snu2aRRiwQNl2Tul567hLF0XpKuZO8hqkgXU4GvjzZ3f3pOCiDPFbBDea7W created_at: '2018-12-30 23:57:35' updated_at: '2020-01-09 16:31:32' last_login: '2020-01-09 16:31:32' policy_accepted: beep_terms_2018_05_25_avg_v1 email_verified_at: '2018-05-25 00:00:00' properties: id: type: integer example: 1317 name: type: string example: test@test.com email: type: string example: test@test.com avatar: type: string example: default.jpg api_token: type: string example: 1snu2aRRiwQNl2Tul567hLF0XpKuZO8hqkgXU4GvjzZ3f3pOCiDPFbBDea7W created_at: type: string example: '2018-12-30 23:57:35' updated_at: type: string example: '2020-01-09 16:31:32' last_login: type: string example: '2020-01-09 16:31:32' policy_accepted: type: string example: beep_terms_2018_05_25_avg_v1 email_verified_at: type: string example: '2018-05-25 00:00:00' tags: - Api\UserController /api/userlocale: patch: summary: "api/userlocale PATCH\nEdit the user locale only, do not update api_key" description: '' parameters: - in: header name: Authorization description: '' example: 'Bearer 6Zv6hbVkgad4faD3Ec581eP' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Api\UserController requestBody: required: false content: application/json: schema: type: object properties: locale: type: string description: 'Two digit country string to define locale' example: dolorem tags: - name: Api\AlertController description: 'Manage your alerts' - name: Api\AlertRuleController description: 'Manage your alert rules' - name: Api\CategoryController description: "All categories in the categorization tree used for hive inspections\nOnly used to get listing (index) or one category (show)" - name: Api\ChecklistController description: 'Manage your personal inspection checklists' - name: Api\DeviceController description: 'Store and retreive Devices that produce measurements' - name: Api\ExportController description: 'Export all data to an Excel file by email (GDPR)' - name: Api\FlashLogController description: '' - name: Api\GroupController description: 'Manage collaboration groups' - name: Api\HiveController description: 'Manage your hives' - name: Api\ImageController description: 'Store and retreive image metadata (image_url, thumb_url, width, category_id, etc.)' - name: Api\InspectionsController description: 'Manage manual hive inspections' - name: Api\LocationController description: 'Manage Apiaries' - name: Api\MeasurementController description: 'Store and retreive sensor data (both LoRa and API POSTs) from a Device' - name: Api\ResearchController description: 'Manage your research consent' - name: Api\ResearchDataController description: 'Retreive owned or viewable Research data' - name: Api\SampleCodeController description: 'Research lab result sample code controller' - name: Api\SensorDefinitionController description: 'Manage your sensor definitions' - name: Api\TaxonomyController description: '' - name: Api\UserController description: "\nAPIs for managing users" components: securitySchemes: default: type: http scheme: bearer description: '' security: - default: []