Project

General

Profile

1
---
2
swagger: "2.0"
3
info:
4
  description: "API for Scholix Object"
5
  version: "1.0.0"
6
  title: "Scholix API"
7
host: "api-dliservice-prototype-dli.d4science.org"
8
basePath: "/v1"
9
schemes:
10
- "https"
11
produces:
12
- "application/json"
13
paths:
14
  /linksFromPid:
15
    get:
16
      tags:
17
      - "Scholix"
18
      summary: "Retrieve all scholix links from a persistent identifier"
19
      description: "The linksFromPid endpoint returns a list of scholix object related\
20
        \ from a specific persistent identifier\n"
21
      operationId: "links_from_pid_get"
22
      parameters:
23
      - name: "pid"
24
        in: "query"
25
        description: "persistent Identifier"
26
        required: true
27
        type: "string"
28
      - name: "pidType"
29
        in: "query"
30
        description: "Persistent Identifier Type"
31
        required: false
32
        type: "string"
33
      - name: "typologyTarget"
34
        in: "query"
35
        description: "typology target filter should be  publication, dataset or unknown"
36
        required: false
37
        type: "string"
38
      - name: "datasourceTarget"
39
        in: "query"
40
        description: "a datasource provenace filter of the target relation"
41
        required: false
42
        type: "string"
43
      - name: "page"
44
        in: "query"
45
        description: "The page of results"
46
        required: false
47
        type: "integer"
48
        format: "int32"
49
      responses:
50
        200:
51
          description: "An array of scholix Object"
52
          schema:
53
            type: "array"
54
            items:
55
              $ref: "#/definitions/Scholix"
56
        default:
57
          description: "Unexpected error"
58
          schema:
59
            $ref: "#/definitions/Error"
60
      x-swagger-router-controller: "swagger_server.controllers.scholix_controller"
61
  /linksFromDatasource:
62
    get:
63
      tags:
64
      - "Scholix"
65
      summary: "Get all scholix relation collected from a datasource"
66
      description: "The realtionFromDatasource endpoint returns a list of scholix\
67
        \ object collected from\na specific datasource\n"
68
      operationId: "links_from_datasource_get"
69
      parameters:
70
      - name: "datasource"
71
        in: "query"
72
        description: "the name of the datasource"
73
        required: true
74
        type: "string"
75
      - name: "page"
76
        in: "query"
77
        description: "The page of results"
78
        required: false
79
        type: "integer"
80
        format: "int32"
81
      responses:
82
        200:
83
          description: "An array of scholix Object"
84
          schema:
85
            type: "array"
86
            items:
87
              $ref: "#/definitions/Scholix"
88
        default:
89
          description: "Unexpected error"
90
          schema:
91
            $ref: "#/definitions/Error"
92
      x-swagger-router-controller: "swagger_server.controllers.scholix_controller"
93
  /linksFromPublishers:
94
    get:
95
      tags:
96
      - "Scholix"
97
      summary: "Get all scholix relation collected from a publisher"
98
      description: "The linksFromPublishers endpoint returns a list of scholix\
99
        \ object collected from\na specific publisher\n"
100
      operationId: "links_from_datasource_get"
101
      parameters:
102
      - name: "publisher"
103
        in: "query"
104
        description: "the name of the publisher"
105
        required: true
106
        type: "string"
107
      - name: "page"
108
        in: "query"
109
        description: "The page of results"
110
        required: false
111
        type: "integer"
112
        format: "int32"
113
      responses:
114
        200:
115
          description: "An array of scholix Object"
116
          schema:
117
            type: "array"
118
            items:
119
              $ref: "#/definitions/Scholix"
120
        default:
121
          description: "Unexpected error"
122
          schema:
123
            $ref: "#/definitions/Error"
124
      x-swagger-router-controller: "swagger_server.controllers.scholix_controller"
125
  /listDatasources:
126
    get:
127
      tags:
128
      - "Datasources"
129
      summary: "Get the list of all Datasources"
130
      description: "The realtionFromDatasource endpoint returns a list of scholix\
131
        \ object collected from\na specific datasource\n"
132
      operationId: "list_datasources_get"
133
      parameters:
134
      - name: "page"
135
        in: "query"
136
        description: "The page of results"
137
        required: false
138
        type: "integer"
139
        format: "int32"
140
      responses:
141
        200:
142
          description: "An array of Datasource name"
143
          schema:
144
            type: "array"
145
            items:
146
              type: "string"
147
        default:
148
          description: "Unexpected error"
149
          schema:
150
            $ref: "#/definitions/Error"
151
      x-swagger-router-controller: "swagger_server.controllers.datasources_controller"
152
definitions:
153
  Scholix:
154
    type: "object"
155
    properties:
156
      publicationDate:
157
        type: "string"
158
        format: "date"
159
      linkPublisher:
160
        $ref: "#/definitions/DSType"
161
      linkProvider:
162
        type: "array"
163
        items:
164
          $ref: "#/definitions/DSType"
165
      relationship:
166
        $ref: "#/definitions/RelationshipType"
167
      source:
168
        $ref: "#/definitions/ObjectType"
169
      target:
170
        $ref: "#/definitions/ObjectType"
171
  DSType:
172
    type: "object"
173
    properties:
174
      name:
175
        type: "string"
176
        description: "The name of the Repository that provides the link"
177
      identifiers:
178
        type: "array"
179
        description: "a List of Identifiers that identify the repository"
180
        items:
181
          $ref: "#/definitions/IdentifierType"
182
  ObjectType:
183
    type: "object"
184
    properties:
185
      identifiers:
186
        type: "array"
187
        description: "a List of Identifiers that identify the repository"
188
        items:
189
          $ref: "#/definitions/IdentifierType"
190
      objectType:
191
        $ref: "#/definitions/ObjectType_objectType"
192
      title:
193
        type: "string"
194
      creators:
195
        type: "array"
196
        description: "a List of Identifiers that identify the repository"
197
        items:
198
          $ref: "#/definitions/CreatorType"
199
      publication:
200
        type: "string"
201
        format: "date"
202
      objectProvider:
203
        type: "array"
204
        items:
205
          $ref: "#/definitions/DSType"
206
      publisher:
207
        $ref: "#/definitions/ObjectType_publisher"
208
  CreatorType:
209
    type: "object"
210
    properties:
211
      name:
212
        type: "string"
213
      identifiers:
214
        type: "array"
215
        description: "a List of Identifiers that identify the repository"
216
        items:
217
          $ref: "#/definitions/IdentifierType"
218
  IdentifierType:
219
    type: "object"
220
    properties:
221
      identifier:
222
        type: "string"
223
      schema:
224
        type: "string"
225
  RelationshipType:
226
    type: "object"
227
    properties:
228
      name:
229
        type: "string"
230
      schema:
231
        type: "string"
232
      inverseRelationship:
233
        type: "string"
234
  Error:
235
    type: "object"
236
    properties:
237
      code:
238
        type: "integer"
239
        format: "int32"
240
      message:
241
        type: "string"
242
  ObjectType_objectType:
243
    properties:
244
      type:
245
        type: "string"
246
      subType:
247
        type: "string"
248
  ObjectType_publisher:
249
    properties:
250
      name:
251
        type: "string"
252
      identifiers:
253
        type: "array"
254
        description: "a List of Identifiers that identify the repository"
255
        items:
256
          $ref: "#/definitions/IdentifierType"
(2-2/6)