101 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			101 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
								 | 
							
								#%RAML 1.0
							 | 
						||
| 
								 | 
							
								title: Baeldung Foo REST Services API
							 | 
						||
| 
								 | 
							
								version: v1
							 | 
						||
| 
								 | 
							
								protocols: [ HTTPS ]
							 | 
						||
| 
								 | 
							
								baseUri: http://rest-api.baeldung.com/api/{version}
							 | 
						||
| 
								 | 
							
								mediaType: application/json
							 | 
						||
| 
								 | 
							
								securedBy: basicAuth
							 | 
						||
| 
								 | 
							
								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.
							 | 
						||
| 
								 | 
							
								types:
							 | 
						||
| 
								 | 
							
								  Foo:   !include types/Foo.raml
							 | 
						||
| 
								 | 
							
								  Error: !include types/Error.raml
							 | 
						||
| 
								 | 
							
								/foos:
							 | 
						||
| 
								 | 
							
								  get:
							 | 
						||
| 
								 | 
							
								    description: List all Foos matching query criteria, if provided;
							 | 
						||
| 
								 | 
							
								                 otherwise list all Foos
							 | 
						||
| 
								 | 
							
								    queryParameters:
							 | 
						||
| 
								 | 
							
								      name?: string
							 | 
						||
| 
								 | 
							
								      ownerName?: string
							 | 
						||
| 
								 | 
							
								    responses:
							 | 
						||
| 
								 | 
							
								      200:
							 | 
						||
| 
								 | 
							
								        body:
							 | 
						||
| 
								 | 
							
								          application/json:
							 | 
						||
| 
								 | 
							
								            type: Foo[]
							 | 
						||
| 
								 | 
							
								            example: !include examples/Foos.json
							 | 
						||
| 
								 | 
							
								  post:
							 | 
						||
| 
								 | 
							
								    description: Create a new Foo
							 | 
						||
| 
								 | 
							
								    body:
							 | 
						||
| 
								 | 
							
								      application/json:
							 | 
						||
| 
								 | 
							
								        type: Foo
							 | 
						||
| 
								 | 
							
								        example: !include examples/Foo.json
							 | 
						||
| 
								 | 
							
								    responses:
							 | 
						||
| 
								 | 
							
								      201:
							 | 
						||
| 
								 | 
							
								        body:
							 | 
						||
| 
								 | 
							
								          application/json:
							 | 
						||
| 
								 | 
							
								            type: Foo
							 | 
						||
| 
								 | 
							
								            example: !include examples/Foo.json
							 | 
						||
| 
								 | 
							
								  /{id}:
							 | 
						||
| 
								 | 
							
								    get:
							 | 
						||
| 
								 | 
							
								      description: Get a Foo by id
							 | 
						||
| 
								 | 
							
								      responses:
							 | 
						||
| 
								 | 
							
								        200:
							 | 
						||
| 
								 | 
							
								          body:
							 | 
						||
| 
								 | 
							
								            application/json:
							 | 
						||
| 
								 | 
							
								              type: Foo
							 | 
						||
| 
								 | 
							
								              example: !include examples/Foo.json
							 | 
						||
| 
								 | 
							
								        404:
							 | 
						||
| 
								 | 
							
								          body:
							 | 
						||
| 
								 | 
							
								            application/json:
							 | 
						||
| 
								 | 
							
								              type: Error
							 | 
						||
| 
								 | 
							
								              example: !include examples/Error.json
							 | 
						||
| 
								 | 
							
								    put:
							 | 
						||
| 
								 | 
							
								      description: Update a Foo by id
							 | 
						||
| 
								 | 
							
								      body:
							 | 
						||
| 
								 | 
							
								        application/json:
							 | 
						||
| 
								 | 
							
								          type: Foo
							 | 
						||
| 
								 | 
							
								          example: !include examples/Foo.json
							 | 
						||
| 
								 | 
							
								      responses:
							 | 
						||
| 
								 | 
							
								        200:
							 | 
						||
| 
								 | 
							
								          body:
							 | 
						||
| 
								 | 
							
								            application/json:
							 | 
						||
| 
								 | 
							
								              type: Foo
							 | 
						||
| 
								 | 
							
								              example: !include examples/Foo.json
							 | 
						||
| 
								 | 
							
								        404:
							 | 
						||
| 
								 | 
							
								          body:
							 | 
						||
| 
								 | 
							
								            application/json:
							 | 
						||
| 
								 | 
							
								              type: Error
							 | 
						||
| 
								 | 
							
								              example: !include examples/Error.json
							 | 
						||
| 
								 | 
							
								    delete:
							 | 
						||
| 
								 | 
							
								      description: Delete a Foo by id
							 | 
						||
| 
								 | 
							
								      responses:
							 | 
						||
| 
								 | 
							
								        204:
							 | 
						||
| 
								 | 
							
								        404:
							 | 
						||
| 
								 | 
							
								          body:
							 | 
						||
| 
								 | 
							
								            application/json:
							 | 
						||
| 
								 | 
							
								              type: Error
							 | 
						||
| 
								 | 
							
								              example: !include examples/Error.json
							 | 
						||
| 
								 | 
							
								  /name/{name}:
							 | 
						||
| 
								 | 
							
								    get:
							 | 
						||
| 
								 | 
							
								      description: List all Foos with a certain name
							 | 
						||
| 
								 | 
							
								      responses:
							 | 
						||
| 
								 | 
							
								        200:
							 | 
						||
| 
								 | 
							
								          body:
							 | 
						||
| 
								 | 
							
								            application/json:
							 | 
						||
| 
								 | 
							
								              type: Foo[]
							 | 
						||
| 
								 | 
							
								              example: !include examples/Foos.json
							 |