> ## Documentation Index
> Fetch the complete documentation index at: https://docs.riyadhparking.sa/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Vioaltion V1

This endpoint lets operators report violations using a multipart/form-data request with location, metadata, and uploaded images.

### Authorization

You must include a bearer token in the `Authorization` header.


## OpenAPI

````yaml POST /v1/violations/public
openapi: 3.0.1
info:
  title: Remat Application
  version: v1
servers:
  - url: /spsr-api
    description: Default Server URL
security:
  - Authorization: []
tags:
  - name: Authentication
    description: Authentication endpoints
  - name: Site Controller
    description: Handles site-related operations
  - name: Violation Controller
    description: Handles violation-related operations
  - name: Ticket Controller
    description: Handles ticket-related operations
  - name: Ticket Guest Controller
    description: Handles guest ticket-related operations
paths:
  /v1/violations/public:
    post:
      tags:
        - Violation Controller
      summary: Create Violation (v1)
      operationId: createViolationV1
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ViolationCreationModelV1'
      responses:
        '200':
          description: Violation successfully created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateViolationV1SuccessResponse'
components:
  schemas:
    ViolationCreationModelV1:
      type: object
      required:
        - zoneId
        - plateNumber
        - plateType
        - violationType
        - location
        - latitude
        - longitude
      properties:
        date:
          type: string
          format: date-time
        latitude:
          type: number
          format: double
        longitude:
          type: number
          format: double
        location:
          type: string
        plateNumber:
          type: string
        plateType:
          type: string
        zoneId:
          type: string
          format: uuid
        imagesDescription:
          type: string
        violationType:
          type: string
        isSaudi:
          type: boolean
        metadata:
          type: object
        fullName:
          type: string
        identityNumber:
          type: string
        mobileNumber:
          type: string
        supervisorFullName:
          type: string
        supervisorIdentityNumber:
          type: string
        supervisorMobileNumber:
          type: string
        images:
          type: array
          items:
            type: string
            format: binary
    CreateViolationV1SuccessResponse:
      type: object
      properties:
        code:
          type: integer
          example: 200
        message:
          type: string
          example: OK
        data:
          type: object
          properties:
            violation_reference_id:
              type: string
              example: V-20250409-ae732f
            status:
              type: string
              example: PENDING
            metadata:
              type: object
              properties:
                id:
                  type: string
                  example: '12345'
  securitySchemes:
    Authorization:
      type: http
      scheme: bearer
      bearerFormat: JWT

````