Skip to content
Snippets Groups Projects
Commit d26a7fb7 authored by naturzukunft's avatar naturzukunft
Browse files

As discussed in the meeting today

parent a25f3b37
No related branches found
No related tags found
No related merge requests found
openapi: 3.0.3
info:
title: FairSync API Organisations/Places
description: FairSync API for synchronizing Organisations/Places between maps and platforms. See also https://nlnet.nl/project/FairSync
title: FairSync API PointOfInterest
description: FairSync API for synchronizing PointOfInterest between maps and platforms. See also https://nlnet.nl/project/FairSync
version: 0.0.1
contact:
name: FairSync API
......@@ -13,9 +13,9 @@ security:
- basicAuth: []
- bearerAuth: []
paths:
/places:
/poi:
get:
summary: Search for places
summary: Search for POIs
tags:
- Places
parameters:
......@@ -91,56 +91,76 @@ components:
type: string
description: "Country code according to ISO 3166-1 Alpha-2"
Contact:
type: object
properties:
emailaddress:
$ref: "#/components/schemas/Emailaddress"
phoneNumber:
$ref: "#/components/schemas/PhoneNumber"
website:
$ref: "#/components/schemas/Website"
Emailaddress:
type: object
required:
- emailAddresses
- email
properties:
emailAddresses:
type: array
items:
type: object
required:
- primary
- email
properties:
primary:
type: boolean
description:
type: string
email:
type: string
format: email
phoneNumbers:
type: array
items:
type: object
required:
- primary
- phone
properties:
primary:
type: boolean
description:
type: string
phone:
type: string
format: phone
websites:
type: array
items:
type: object
required:
- primary
- url
properties:
primary:
type: boolean
description:
type: string
url:
type: string
format: url
Place:
description:
type: string
email:
type: string
format: email
PhoneNumber:
type: object
required:
- phone
properties:
description:
type: string
phone:
type: string
format: phone
Website:
type: object
required:
- url
properties:
description:
type: string
url:
type: string
format: url
Owner:
type: object
description: The owner of a POI. This is not a plattform, its more a person or a organisation, that is responsible for a concrete entry.
required:
- contacturl
properties:
contact:
$ref: '#/components/schemas/Contact'
Plattform:
type: object
description: The plattform that owns a POI.
required:
- url
properties:
url:
type: string
format: url
VerifiedTag:
type: object
description: Tags that are verified by the maintainer (a.k.a. plattform). Some platforms have service employees who validate entries and check whether tags have been allocated correctly.
required:
- url
properties:
tag:
type: string
verified:
type: string
enum: [verified, rejected]
verifiedBy:
$ref: '#/components/schemas/Contact'
PointOfInterest:
required:
- address
- contact
......@@ -148,7 +168,6 @@ components:
- language
- license
- source
# - status
- title
properties:
id:
......@@ -158,10 +177,26 @@ components:
example: 'https://kartevonmorgen.org/#/?entry=e58b14c1aa4e446bb1700b03dcac3069'
version:
type: integer
createdAt:
$ref: '#/components/schemas/DateTime'
language:
$ref: '#/components/schemas/Language'
createdAt:
$ref: '#/components/schemas/DateTime'
deleted:
type: boolean
description: If true, this POI was deleted on the plattform you requested POIs
license:
type: string
source:
type: object
description: Origin of the dataset
required:
- providerId
- entryId
properties:
owner:
$ref: '#/components/schemas/Owner'
plattform:
$ref: '#/components/schemas/Plattform'
title:
type: string
description:
......@@ -170,6 +205,10 @@ components:
type: array
items:
type: string
verifiedTags:
type: array
items:
$ref: '#/components/schemas/VerifiedTag'
images:
type: array
items:
......@@ -184,8 +223,11 @@ components:
address:
# This is the Place adress. It may be the same as the legalAddress. This address is mandatory.
$ref: '#/components/schemas/Address'
contact:
$ref: '#/components/schemas/Contact'
contacts:
type: array
items:
$ref: '#/components/schemas/Contact'
openingHours:
type: object
description: |
......@@ -228,26 +270,15 @@ components:
oneOf:
- type: number
- type: string
license:
type: string
source:
type: object
description: Origin of the dataset
required:
- providerId
- entryId
properties:
providerId:
type: string
entryId:
type: string
description: Original id of the entry
url:
type: string
format: url
#status:
#To be discussed. Fredy is not happy with providing a kind of process!
#$ref: '#/components/schemas/PublicationStatus'
additionalProperties:
type: array
items:
type: object
properties:
key:
type: string
value:
type: string
parameters:
BoundingBox:
name: boundingBox
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment