aboutsummaryrefslogtreecommitdiffstats
path: root/golang/fatcat-openapi2.yml
diff options
context:
space:
mode:
Diffstat (limited to 'golang/fatcat-openapi2.yml')
-rw-r--r--golang/fatcat-openapi2.yml93
1 files changed, 93 insertions, 0 deletions
diff --git a/golang/fatcat-openapi2.yml b/golang/fatcat-openapi2.yml
new file mode 100644
index 00000000..2f635697
--- /dev/null
+++ b/golang/fatcat-openapi2.yml
@@ -0,0 +1,93 @@
+---
+swagger: "2.0"
+info:
+ title: fatcat
+ description: A scalable, versioned, API-oriented catalog of bibliographic entities
+ and file metadata
+ version: 0.1.0
+schemes: [http, https]
+basePath: /v0
+host: api.fatcat.wiki
+consumes:
+- application/json
+produces:
+- application/json
+
+# TODO: try to make this work:
+#x-entity-props: &ENTITYPROPS
+#<<: *ENTITYPROPS
+
+
+definitions:
+ error:
+ type: object
+ required:
+ - message
+ properties:
+ message:
+ type: string
+ creator_entity:
+ type: object
+ required:
+ - ident
+ - state
+ properties:
+ state:
+ type: string
+ # actually enum of: (wip, active, redirect, deleted)
+ ident:
+ type: string
+ # format: uuid
+ revision:
+ type: string
+ # integer
+ redirect:
+ type: string
+ # format: uuid
+ name:
+ type: string
+ orcid:
+ type: string
+ # format: custom
+
+paths:
+ /creator:
+ post:
+ parameters:
+ - name: body
+ in: body
+ schema:
+ $ref: "#/definitions/creator_entity"
+ responses:
+ 201:
+ description: created
+ schema:
+ $ref: "#/definitions/creator_entity"
+ default:
+ description: generic error response
+ schema:
+ $ref: "#/definitions/error"
+ /creator/{id}:
+ parameters:
+ - name: id
+ in: path
+ type: string
+ required: true
+ get:
+ responses:
+ 200:
+ description: fetch a single creator by id
+ schema:
+ $ref: "#/definitions/creator_entity"
+ default:
+ description: generic error response
+ schema:
+ $ref: "#/definitions/error"
+# /creator/lookup:
+
+# /editgroup:
+# /editgroup/{id}:
+# /editgroup/{id}/accept:
+
+# /editor/{username}:
+# /editor/{username}/changelog: