Arlolra has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/191802

Change subject: Combine and clean up the v2 api specs
......................................................................

Combine and clean up the v2 api specs

 * For simpler pasting in http://editor.swagger.io/#/

 * Still uses an unsupported "extends" keyword but still a little
   clearer overall.

 * Continues on I267b2320772824751ea75ff02a0ec03f08d7b2b5

Change-Id: Ibd59f7b0043a815c5adf3e569512b81de288035f
---
A docs/specs/apiv2.yaml
D docs/specs/html2wt.yaml
D docs/specs/wt2html.yaml
D docs/specs/wt2pagebundle.yaml
4 files changed, 288 insertions(+), 275 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/services/parsoid 
refs/changes/02/191802/1

diff --git a/docs/specs/apiv2.yaml b/docs/specs/apiv2.yaml
new file mode 100644
index 0000000..6921595
--- /dev/null
+++ b/docs/specs/apiv2.yaml
@@ -0,0 +1,288 @@
+swagger: '2.0'
+info:
+  title: Parsoid conversion API
+  version: '2.0.0'
+basePath: /v2
+paths:
+
+  /{domain}/html/{title}:
+    parameters:
+      - name: domain
+        in: path
+        type: string
+        required: true
+        default: en.wikipedia.org
+      - name: title
+        in: path
+        type: string
+        required: true
+        default: Main_Page
+    get:
+      responses:
+        302:
+          description: Redirect
+
+  /{domain}/html/{title}/{revision}:
+    parameters:
+      - name: domain
+        in: path
+        type: string
+        required: true
+        default: en.wikipedia.org
+      - name: title
+        in: path
+        type: string
+        required: true
+        default: Main_Page
+      - name: revision
+        in: path
+        type: string
+        required: true
+        default: 1
+    get:
+      produces:
+        - text/html; profile=mediawiki.org/specs/html/1.0.0
+      responses:
+        200:
+          description: HTML
+          schema:
+            $ref: '#/definitions/HTML'
+    post:
+      produces:
+        - text/html; profile=mediawiki.org/specs/html/1.0.0
+      parameters:
+        - in: body
+          name: body
+          required: true
+          schema:
+            $ref: '#/definitions/Wt2HtmlSource'
+      responses:
+        200:
+          description: HTML
+          schema:
+            $ref: '#/definitions/HTML'
+
+  /{domain}/html/:
+    parameters:
+      - name: domain
+        in: path
+        type: string
+        required: true
+        default: en.wikipedia.org
+    post:
+      produces:
+        - text/html; profile=mediawiki.org/specs/html/1.0.0
+      parameters:
+        - in: body
+          name: body
+          schema:
+            $ref: '#/definitions/Wt2HtmlSource'
+      responses:
+        200:
+          description: HTML
+          schema:
+            $ref: '#/definitions/HTML'
+
+  /{domain}/pagebundle/{title}:
+    parameters:
+      - name: domain
+        in: path
+        type: string
+        required: true
+        default: en.wikipedia.org
+      - name: title
+        in: path
+        type: string
+        required: true
+        default: Main_Page
+    get:
+      responses:
+        302:
+          description: Redirect
+
+  /{domain}/pagebundle/{title}/{revision}:
+    parameters:
+      - name: domain
+        in: path
+        type: string
+        required: true
+        default: en.wikipedia.org
+      - name: title
+        in: path
+        type: string
+        required: true
+        default: Main_Page
+      - name: revision
+        in: path
+        type: string
+        required: true
+        default: 1
+    get:
+      produces:
+        - application/json
+      responses:
+        200:
+          description: Page bundle
+          schema:
+            $ref: '#/definitions/PageBundle'
+    post:
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: body
+          required: true
+          schema:
+            $ref: '#/definitions/Wt2HtmlSource'
+      responses:
+        200:
+          description: Page bundle
+          schema:
+            $ref: '#/definitions/PageBundle'
+
+  /{domain}/pagebundle/:
+    parameters:
+      - name: domain
+        in: path
+        type: string
+        required: true
+        default: en.wikipedia.org
+    post:
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: body
+          schema:
+            $ref: '#/definitions/Wt2HtmlSource'
+      responses:
+        200:
+          description: Page bundle
+          schema:
+            $ref: '#/definitions/PageBundle'
+
+  /{domain}/wt/:
+    parameters:
+      - name: domain
+        in: path
+        type: string
+        required: true
+        default: en.wikipedia.org
+    post:
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: body
+          required: true
+          schema:
+            $ref: '#/definitions/Html2WtSource'
+      responses:
+        200:
+          description: Wikitext
+          schema:
+            $ref: '#/definitions/Wikitext'
+
+definitions:
+
+  Wikitext:
+    properties:
+      headers:
+        type: object
+      body:
+        type: string
+        produces:
+          - text/plain; profile=mediawiki.org/specs/wikitext/1.0.0
+
+  HTML:
+    type: string
+    produces:
+      - text/html; profile=mediawiki.org/specs/html/1.0.0
+
+  DataParsoid:
+    type: object
+    properties:
+      counter:
+        type: integer
+      ids:
+        type: object
+    produces:
+      - application/json; profile=mediawiki.org/specs/data-parsoid/0.0.1
+
+  PageBundle:
+    type: object
+    properties:
+      html:
+        schema:
+          $ref: '#/definitions/HTML'
+      data-parsoid:
+        schema:
+          $ref: '#/definitions/DataParsoid'
+    produces:
+      - application/json
+
+  PlainRequest:
+    properties:
+      headers:
+        type: object
+      body:
+        type: string
+
+  DataParsoidRequest:
+    properties:
+      headers:
+        type: object
+      body:
+        schema:
+          $ref: '#/definitions/DataParsoid'
+
+  Page:
+    properties:
+      revid:
+        type: integer
+      wikitext:
+        schema:
+          $ref: '#/definitions/PlainRequest'
+      html:
+        schema:
+          $ref: '#/definitions/PlainRequest'
+      data-parsoid:
+        schema:
+          $ref: '#/definitions/DataParsoidRequest'
+
+  Original:
+    extends: Page
+    properties:
+      title:
+        type: string
+
+  Update:
+    properties:
+      templates:
+        type: boolean
+
+  Source:
+    properties:
+      previous:
+        schema:
+          $ref: '#/definitions/Page'
+      original:
+        schema:
+          $ref: '#/definitions/Original'
+
+  Wt2HtmlSource:
+    extends: Source
+    properties:
+      update:
+        schema:
+          $ref: '#/definitions/Update'
+      wikitext:
+        schema:
+          $ref: '#/definitions/PlainRequest'
+
+  Html2WtSource:
+    extends: Source
+    properties:
+      html:
+        schema:
+          $ref: '#/definitions/PlainRequest'
diff --git a/docs/specs/html2wt.yaml b/docs/specs/html2wt.yaml
deleted file mode 100644
index 7ada649..0000000
--- a/docs/specs/html2wt.yaml
+++ /dev/null
@@ -1,87 +0,0 @@
-swagger: '2.0'
-info:
-  title: Parsoid conversion API
-  version: '2.0.0'
-basePath: /v2
-paths:
-  /{domain}/wt/:
-    parameters:
-      - name: domain
-        in: path
-        type: string
-        required: true
-        default: en.wikipedia.org
-    post:
-      produces:
-        - application/json; profile=mediawiki.org/specs/data-parsoid/0.0.1
-      parameters:
-        - in: body
-          name: body
-          required: true
-          schema:
-            $ref: '#/definitions/Source'
-      responses:
-        200:
-          description: Wikitext
-          schema:
-            $ref: '#/definitions/Wikitext'
-        400:
-          description: Invalid source
-definitions:
-  Source:
-    title: Source
-  Html:
-    extends: Source
-    properties:
-      html:
-        type: string
-  HtmlBundle:
-    extends: Source
-    properties:
-      html:
-        schema:
-          $ref: '#/definitions/PlainRequest'
-      data-parsoid:
-        schema:
-          $ref: '#/definitions/DataParsoidRequest'
-      original:
-        schema:
-          $ref: '#/definitions/Original'
-  DataParsoidRequest:
-    properties:
-      headers:
-        type: object
-      body:
-        schema:
-          $ref: '#/definitions/DataParsoid'
-  DataParsoid:
-    properties:
-      counter:
-        type: integer
-      ids:
-        type: object
-  PlainRequest:
-    properties:
-      headers:
-        type: object
-      body:
-        type: string
-  Original:
-    properties:
-      revid:
-        type: integer
-      title:
-        type: string
-      wikitext:
-        schema:
-          $ref: '#/definitions/PlainRequest'
-      html:
-        schema:
-          $ref: '#/definitions/PlainRequest'
-      data-parsoid:
-        schema:
-          $ref: '#/definitions/DataParsoidRequest'
-  Wikitext:
-    properties:
-      wikitext:
-        type: string
diff --git a/docs/specs/wt2html.yaml b/docs/specs/wt2html.yaml
deleted file mode 100644
index ced53fb..0000000
--- a/docs/specs/wt2html.yaml
+++ /dev/null
@@ -1,150 +0,0 @@
-swagger: '2.0'
-info:
-  title: Parsoid conversion API
-  version: '2.0.0'
-basePath: /v2
-paths:
-  /{domain}/html/:
-    parameters:
-      - name: domain
-        in: path
-        type: string
-        required: true
-        default: en.wikipedia.org
-    post:
-      produces:
-        - text/html; profile=mediawiki.org/specs/html/1.0.0
-      parameters:
-        - in: body
-          name: body
-          schema:
-            $ref: '#/definitions/Orphan'
-      responses:
-        200:
-          description: HTML
-        400:
-          description: Invalid input
-  /{domain}/html/{title}:
-    parameters:
-      - name: domain
-        in: path
-        type: string
-        required: true
-        default: en.wikipedia.org
-      - name: title
-        in: path
-        type: string
-        required: true
-        default: Main_Page
-    get:
-      responses:
-        302:
-          description: Redirect
-  /{domain}/html/{title}/{revision}:
-    parameters:
-      - name: domain
-        in: path
-        type: string
-        required: true
-        default: en.wikipedia.org
-      - name: title
-        in: path
-        type: string
-        required: true
-        default: Main_Page
-      - name: revision
-        in: path
-        type: string
-        required: true
-        default: 1
-    get:
-      produces:
-        - text/html; profile=mediawiki.org/specs/html/1.0.0
-      responses:
-        200:
-          description: HTML
-    post:
-      summary: Convert a revision to html
-      produces:
-        - text/html; profile=mediawiki.org/specs/html/1.0.0
-      parameters:
-        - in: body
-          name: body
-          required: true
-          schema:
-            $ref: '#/definitions/Page'
-      responses:
-        200:
-          description: HTML
-definitions:
-  Orphan:
-    title: Raw source
-  WikitextRaw:
-    extends: Orphan
-    properties:
-      wikitext:
-        type: string
-  WikitextRequest:
-    extends: Orphan
-    properties:
-      wikitext:
-        schema:
-          $ref: '#/definitions/PlainRequest'
-  PlainRequest:
-    properties:
-      headers:
-        type: object
-      body:
-        type: string
-  DataParsoidRequest:
-    properties:
-      headers:
-        type: object
-      body:
-        schema:
-          $ref: '#/definitions/DataParsoid'
-  DataParsoid:
-    properties:
-      counter:
-        type: integer
-      ids:
-        type: object
-  Page:
-    title: Page
-  Previous:
-    extends: Page
-    properties:
-      revid:
-        type: integer
-      html:
-        schema:
-          $ref: '#/definitions/PlainRequest'
-      data-parsoid:
-        schema:
-          $ref: '#/definitions/DataParsoidRequest'
-  Original:
-    extends: Page
-    properties:
-      update:
-        schema:
-          $ref: '#/definitions/Update'
-      original:
-        schema:
-          $ref: '#/definitions/Original'
-  Update:
-    properties:
-      templates:
-        type: boolean
-  Original:
-    properties:
-      revid:
-        type: integer
-      html:
-        schema:
-          $ref: '#/definitions/PlainRequest'
-      data-parsoid:
-        schema:
-          $ref: '#/definitions/DataParsoidRequest'
-      wikitext:
-        schema:
-          $ref: '#/definitions/WikitextRequest'
\ No newline at end of file
diff --git a/docs/specs/wt2pagebundle.yaml b/docs/specs/wt2pagebundle.yaml
deleted file mode 100644
index 90ada8b..0000000
--- a/docs/specs/wt2pagebundle.yaml
+++ /dev/null
@@ -1,38 +0,0 @@
-swagger: '2.0'
-info:
-  title: Parsoid conversion API
-  version: '2.0.0'
-basePath: /v2
-paths:
-  /{domain}/html/{title}/{revision}:
-    parameters:
-      - name: domain
-        in: path
-        type: string
-        required: true
-        default: en.wikipedia.org
-      - name: title
-        in: path
-        type: string
-        required: true
-        default: Main_Page
-      - name: revision
-        in: path
-        type: string
-        required: true
-        default: 1
-    get:
-      produces:
-        - application/json; profile=mediawiki.org/specs/data-parsoid/0.0.1
-      responses:
-        200:
-          description: Page bundle
-          schema:
-            $ref: '#/definitions/PageBundle'
-definitions:
-  PageBundle:
-    parameters:
-      html:
-        type: object
-      data-parsoid:
-        type: object
\ No newline at end of file

-- 
To view, visit https://gerrit.wikimedia.org/r/191802
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ibd59f7b0043a815c5adf3e569512b81de288035f
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/services/parsoid
Gerrit-Branch: master
Gerrit-Owner: Arlolra <abrea...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to