102 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			102 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| #%RAML 0.8
 | |
| title: Baeldung Foo REST Services API
 | |
| version: v1
 | |
| protocols: [ HTTPS ]
 | |
| baseUri: http://rest-api.baeldung.com/api/{version}
 | |
| mediaType: application/json
 | |
| securitySchemes:
 | |
|   - basicAuth:
 | |
|       description: Each request must contain the headers necessary for
 | |
|                    basic authentication
 | |
|       type: Basic Authentication
 | |
|       describedBy:
 | |
|         headers:
 | |
|           Authorization:
 | |
|             description: Used to send the Base64 encoded "username:password"
 | |
|                          credentials
 | |
|             type: string
 | |
|         responses:
 | |
|           401:
 | |
|             description: |
 | |
|               Unauthorized. Either the provided username and password
 | |
|               combination is invalid, or the user is not allowed to access
 | |
|               the content provided by the requested URL.
 | |
| 
 | |
| schemas:
 | |
|   - foo: !include foo.json
 | |
|   - foos: !include foos.json
 | |
|   - error: !include error.json
 | |
| 
 | |
| /foos:
 | |
|   get:
 | |
|     description: List all Foos matching query criteria, if provided;
 | |
|                  otherwise list all Foos
 | |
|     queryParameters:
 | |
|       name:
 | |
|         type: string
 | |
|         required: false
 | |
|       ownerName:
 | |
|         type: string
 | |
|         required: false
 | |
|     responses:
 | |
|       200:
 | |
|         body:
 | |
|           application/json:
 | |
|             schema: foos
 | |
|             example: !include foos-example.json
 | |
|   post:
 | |
|     description: Create a new Foo
 | |
|     body:
 | |
|       application/json:
 | |
|         schema: foo
 | |
|         example: foo-example.json
 | |
|     responses:
 | |
|       201:
 | |
|         body:
 | |
|           application/json:
 | |
|             schema: foo
 | |
|             example: foo-example.json
 | |
|   /{id}:
 | |
|     get:
 | |
|       description: Get a Foo by id
 | |
|       responses:
 | |
|         200:
 | |
|           body:
 | |
|             application/json:
 | |
|               schema: foo
 | |
|         404:
 | |
|           body:
 | |
|             application/json:
 | |
|               schema: error
 | |
|     put:
 | |
|       description: Update a Foo by id
 | |
|       body:
 | |
|         application/json:
 | |
|           schema: foo
 | |
|           example: foo-example.json
 | |
|       responses:
 | |
|         200:
 | |
|           body:
 | |
|             application/json:
 | |
|               schema: foo
 | |
|         404:
 | |
|           body:
 | |
|             application/json:
 | |
|               schema: error
 | |
|     delete:
 | |
|       description: Delete a Foo by id
 | |
|       responses:
 | |
|         204:
 | |
|         404:
 | |
|           body:
 | |
|             application/json:
 | |
|               schema: error
 | |
|   /name/{name}:
 | |
|     get:
 | |
|       description: List all Foos with a certain name
 | |
|       responses:
 | |
|         200:
 | |
|           body:
 | |
|             application/json:
 | |
|               schema: foos
 | |
|               example: !include foos-example.json |