mirror of
				https://github.com/kerberos-io/openalpr-base.git
				synced 2025-11-01 05:12:35 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			324 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			324 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| swagger: '2.0'
 | |
| 
 | |
| info:
 | |
|   version: "1.0.1"
 | |
|   title: OpenALPR Cloud API
 | |
| host: api.openalpr.com
 | |
| basePath: /v1
 | |
| schemes:
 | |
|   - https
 | |
| produces:
 | |
|   - application/json
 | |
| 
 | |
| paths:
 | |
|   # Send an image to OpenALPR and get the analyzed results
 | |
|   /recognize:
 | |
|     post:
 | |
|       description: |
 | |
|         Send an image for OpenALPR to analyze and provide metadata back
 | |
|       consumes: 
 | |
|         - "multipart/form-data"
 | |
|       produces:
 | |
|         - application/json
 | |
|       parameters:
 | |
|         -
 | |
|           name: secret_key
 | |
|           in: query
 | |
|           description: |
 | |
|             The secret key used to authenticate your account.  You can view your 
 | |
|             secret key by visiting 
 | |
|             https://cloud.openalpr.com/
 | |
|           required: true
 | |
|           type: string
 | |
|         -
 | |
|           name: tasks
 | |
|           in: query
 | |
|           description: |
 | |
|             Tasks to execute.  You can choose to detect the license plate, 
 | |
|             as well as additional metadata about the vehicle.  Each additional 
 | |
|             option costs an API credit.  Valid values are: plate, color, make, makemodel.
 | |
|             Use commas to specify multiple recognition types in one pass
 | |
|           required: true
 | |
|           type: array
 | |
|           items: 
 | |
|             type: string
 | |
|             enum: [ "plate", "color", "make", "makemodel"]
 | |
|         -
 | |
|           name: image
 | |
|           in: formData
 | |
|           description: |
 | |
|             The image file that you wish to analyze
 | |
|             At least one value for image, image_bytes, or image_url must be provided
 | |
|           required: true
 | |
|           type: file
 | |
|         -
 | |
|           name: image_bytes
 | |
|           in: query
 | |
|           description: |
 | |
|             The image file that you wish to analyze encoded in base64
 | |
|             At least one value for image, image_bytes, or image_url must be provided
 | |
|           required: false
 | |
|           type: string
 | |
|         -
 | |
|           name: image_url
 | |
|           in: query
 | |
|           description: |
 | |
|             A URL to an image that you wish to analyze
 | |
|             At least one value for image, image_bytes, or image_url must be provided
 | |
|           required: false
 | |
|           type: string
 | |
|         -
 | |
|           name: country
 | |
|           in: query
 | |
|           description: |
 | |
|             Defines the training data used by OpenALPR.  "us" analyzes 
 | |
|             North-American style plates.  "eu" analyzes European-style plates.
 | |
|             
 | |
|             This field is required if using the "plate" task
 | |
|             
 | |
|             You may use multiple datasets by using commas between the country 
 | |
|             codes.  For example, 'au,auwide' would analyze using both the 
 | |
|             Australian plate styles.  A full list of supported country codes 
 | |
|             can be found here
 | |
|             https://github.com/openalpr/openalpr/tree/master/runtime_data/config
 | |
|           required: false
 | |
|           type: string
 | |
|         -
 | |
|           name: state
 | |
|           in: query
 | |
|           description: |
 | |
|             Corresponds to a US state or EU country code used by OpenALPR pattern 
 | |
|             recognition.  For example, using "md" matches US plates against the 
 | |
|             Maryland plate patterns.  Using "fr" matches European plates against 
 | |
|             the French plate patterns.
 | |
|           required: false
 | |
|           type: string
 | |
|         -
 | |
|           name: return_image
 | |
|           in: query
 | |
|           description: |
 | |
|             If set to 1, the image you uploaded will be encoded in base64 and 
 | |
|             sent back along with the response
 | |
|           required: false
 | |
|           type: integer
 | |
|           enum: [0, 1]
 | |
|         -
 | |
|           name: topn
 | |
|           in: query
 | |
|           description: |
 | |
|             The number of results you would like to be returned for plate 
 | |
|             candidates and vehicle classifications
 | |
|           required: false
 | |
|           type: integer
 | |
|           minimum: 1
 | |
|           maximum: 1000
 | |
|         -
 | |
|           name: prewarp
 | |
|           in: query
 | |
|           description: |
 | |
|             Prewarp configuration is used to calibrate the analyses for the 
 | |
|             angle of a particular camera.  More information is available here
 | |
|             http://doc.openalpr.com/accuracy_improvements.html#calibration
 | |
|           required: false
 | |
|           type: string
 | |
|           
 | |
|       # Expected responses for this operation:
 | |
|       responses:
 | |
|         # Response code
 | |
|         200:
 | |
|           description: OK
 | |
|           headers:
 | |
|             X-RateLimit-Limit:
 | |
|               description: Maximum number of requests allowed from your IP in a period
 | |
|               type: integer
 | |
|             X-Ratelimit-Remaining:
 | |
|               description: Number of remaining requests allowed during this period
 | |
|               type: integer
 | |
|             X-Ratelimit-Reset:
 | |
|               description: Epoch time when the next period begins
 | |
|               type: integer
 | |
|           schema:
 | |
|             properties:
 | |
|               total_processing_time:
 | |
|                 type: number
 | |
|                 description: Time spent processing all tasks (in milliseconds)
 | |
|               img_width:
 | |
|                 type: integer
 | |
|                 description: Width of the uploaded image in pixels
 | |
|               img_height:
 | |
|                 type: integer
 | |
|                 description: Height of the input image in pixels
 | |
|               credit_cost:
 | |
|                 type: integer
 | |
|                 description: The number of API credits that were used to process this image
 | |
|               credits_monthly_used:
 | |
|                 type: integer
 | |
|                 description: The number of API credits used this month
 | |
|               credits_monthly_total:
 | |
|                 type: integer
 | |
|                 description: The maximum number of API credits available this month according to your plan
 | |
|               makemodel:
 | |
|                 type: array
 | |
|                 description: Results from makemodel vehicle analysis task
 | |
|                 items:
 | |
|                   $ref: '#/definitions/classification'
 | |
|               make:
 | |
|                 type: array
 | |
|                 description: Results from make vehicle analysis task
 | |
|                 items:
 | |
|                   $ref: '#/definitions/classification'
 | |
|               color:
 | |
|                 type: array
 | |
|                 description: Results from color vehicle analysis task
 | |
|                 items:
 | |
|                   $ref: '#/definitions/classification'
 | |
|               plate:
 | |
|                 $ref: '#/definitions/alpr_plate'
 | |
| 
 | |
|                 
 | |
|                   
 | |
| 
 | |
|         400:
 | |
|           description: Parameter is invalid
 | |
|           schema:
 | |
|             properties:
 | |
|               error:
 | |
|                 type: string
 | |
|                 description: Text error message describing the invalid input
 | |
|         401:
 | |
|           description: User not authorized or invalid secret_key
 | |
|           schema:
 | |
|             properties:
 | |
|               error:
 | |
|                 type: string
 | |
|                 description: Text error message describing the invalid input
 | |
|           
 | |
|         402:
 | |
|           description: Monthly usage limit exceeded
 | |
|           schema:
 | |
|             properties:
 | |
|               error:
 | |
|                 type: string
 | |
|                 description: Text error message describing the invalid input
 | |
|         403:
 | |
|           description: Temporary rate-limit exceeded
 | |
|           schema:
 | |
|             properties:
 | |
|               error:
 | |
|                 type: string
 | |
|                 description: Text error message describing the invalid input
 | |
|           
 | |
| definitions:
 | |
|   classification:
 | |
|     type: object
 | |
|     properties:
 | |
|       confidence:
 | |
|         type: number
 | |
|       value:
 | |
|         type: string
 | |
| 
 | |
|   coordinate:
 | |
|     type: object
 | |
|     properties:
 | |
|       x:
 | |
|         type: integer
 | |
|       y:
 | |
|         type: integer
 | |
|         
 | |
|   region_of_interest:
 | |
|     type: object
 | |
|     properties:
 | |
|       x:
 | |
|         type: integer
 | |
|       y:
 | |
|         type: integer
 | |
|       width:
 | |
|         type: integer
 | |
|       height:
 | |
|         type: integer
 | |
|         
 | |
|   plate_candidate:
 | |
|     type: object
 | |
|     properties:
 | |
|       plate:
 | |
|         type: string
 | |
|         description: Plate number
 | |
|       confidence:
 | |
|         type: number
 | |
|         description: Confidence percentage that the plate number is correct
 | |
|       matches_template:
 | |
|         type: integer
 | |
|         description: Indicates whether the plate matched a regional text pattern
 | |
|         
 | |
|   plate_details:
 | |
|     type: object
 | |
|     properties:
 | |
|       plate:
 | |
|         type: string
 | |
|         description: Best plate number for this plate
 | |
|       matches_template:
 | |
|         type: integer
 | |
|         description: Indicates whether the plate matched a regional text pattern
 | |
|       requested_topn:
 | |
|         type: integer
 | |
|         description: The max number of results requested
 | |
|       processing_time_ms:
 | |
|         type: number
 | |
|         description: Number of milliseconds to process the license plate
 | |
|       confidence:
 | |
|         type: number
 | |
|         description: Confidence percentage that the plate number is correct
 | |
|       region:
 | |
|         type: string
 | |
|         description: Specified or detected region (e.g., tx for Texas)
 | |
|       region_confidence:
 | |
|         type: number
 | |
|         description: Confidence percentage that the plate region is correct
 | |
|       coordinates:
 | |
|         type: array
 | |
|         description: |
 | |
|           The X/Y coordinates of the license plate in the image
 | |
|           Four coordinates are provided that form a polygon starting
 | |
|           from the top-left and moving clockwise ending in the bottom left
 | |
|         items:
 | |
|           $ref: '#/definitions/coordinate'
 | |
|       candidates:
 | |
|         type: array
 | |
|         description: All the top N candidates that could be the correct plate number
 | |
|         items:
 | |
|           $ref: '#/definitions/plate_candidate'
 | |
|           
 | |
|   alpr_plate:
 | |
|     description: Results from plate analysis task
 | |
|     type: object
 | |
|     properties:
 | |
|       results:
 | |
|         type: array
 | |
|         items:
 | |
|           $ref: '#/definitions/plate_details'
 | |
|       img_width:
 | |
|         type: integer
 | |
|         description: Width of the uploaded image in pixels
 | |
|       img_height:
 | |
|         type: integer
 | |
|         description: Height of the input image in pixels
 | |
|       regions_of_interest:
 | |
|         type: array
 | |
|         description: Describes the areas analyzed in the input image
 | |
|         items:
 | |
|           $ref: '#/definitions/region_of_interest'
 | |
|       epoch_time:
 | |
|         # This is actually an integer, but setting to number to avoid issues with overflow
 | |
|         type: number
 | |
|         description: Epoch time that the image was processed in milliseconds
 | |
|       version:
 | |
|         type: integer
 | |
|         description: API format version
 | |
|       data_type:
 | |
|         type: string
 | |
|         enum: ["alpr_results", "alpr_group", "heartbeat"]
 | |
|         description: Specifies the type of data in this response
 | |
|       processing_time_ms:
 | |
|         type: number
 | |
|         description: Number of milliseconds to process all license plates
 | 
