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

# Submit SR

> Submit a draft service request for authentication after all required images are uploaded.

Call [Get Full SR](/api-reference#tag/Service-Requests/operation/getServiceRequestV2) with `?sides=true&item=true` first and verify `sr.sides.progress.met` is `true` (or use the [Get Progress](/api-reference#tag/Service-Requests/operation/getServiceRequestProgress) endpoint).

On success the SR transitions from `DRAFT` to `QC` / `PENDING`.



## OpenAPI

````yaml /openapi.json post /api/v2/sr/{sr_uuid}/submit
openapi: 3.1.0
info:
  title: Legitmark Partner API
  description: Comprehensive partner integration API for Legitmark authentication platform
  version: 2.0.0
  contact:
    name: Legitmark Support
    email: support@legitmark.com
    url: https://legitmark.com
servers:
  - url: https://api.legitmark.com
    description: Production API
security:
  - BearerAuth: []
tags:
  - name: Service Requests
    description: Create, retrieve, and manage authentication service requests.
  - name: Media Management
    description: Upload images for service request authentication.
  - name: Taxonomy
    description: Browse categories, types, brands, models, and services to build requests.
paths:
  /api/v2/sr/{sr_uuid}/submit:
    post:
      tags:
        - Service Requests
      summary: Submit SR
      description: >-
        Submit a draft service request for authentication after all required
        images are uploaded.


        Call [Get Full
        SR](/api-reference#tag/Service-Requests/operation/getServiceRequestV2)
        with `?sides=true&item=true` first and verify `sr.sides.progress.met` is
        `true` (or use the [Get
        Progress](/api-reference#tag/Service-Requests/operation/getServiceRequestProgress)
        endpoint).


        On success the SR transitions from `DRAFT` to `QC` / `PENDING`.
      operationId: submitServiceRequest
      parameters:
        - name: sr_uuid
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: Service request UUID
          example: 8e61c991-553a-4a58-9eb6-561b64c11908
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                exemption_decisions:
                  type: array
                  description: >-
                    Optional partner-batched customer decisions (e.g., image
                    cannot be taken). Applied atomically with submission.
                  items:
                    type: object
      responses:
        '200':
          description: Service request submitted successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  message:
                    type: string
                    example: Service request submitted for authentication.
                  sr:
                    type: object
                    description: Updated service request (minimal shape)
                    properties:
                      uuid:
                        type: string
                        format: uuid
                      micro_id:
                        type: string
                      state:
                        type: object
                        properties:
                          primary:
                            type: string
                            example: QC
                          supplement:
                            type: string
                            nullable: true
                            example: PENDING
              example:
                success: true
                message: Service request submitted for authentication.
                sr:
                  uuid: 8e61c991-553a-4a58-9eb6-561b64c11908
                  micro_id: '998001'
                  state:
                    primary: QC
                    supplement: PENDING
        '400':
          description: >-
            Validation error (e.g., SR not in DRAFT state, required images
            missing)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Authentication required
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Service request not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - BearerAuth: []
      x-codeSamples:
        - lang: typescript
          label: SDK
          source: |-
            import { Legitmark } from 'legitmark';

            const legitmark = new Legitmark('leo_your_api_key');

            const progress = await legitmark.sr.getProgress(srUuid);
            if (progress.met) {
              const { sr } = await legitmark.sr.submit(srUuid);
              console.log(`${sr.state?.primary}/${sr.state?.supplement}`);
            }
        - lang: python
          label: Python
          source: |-
            import requests

            response = requests.post(
                f'https://api.legitmark.com/api/v2/sr/{sr_uuid}/submit',
                headers={'Authorization': 'Bearer leo_your_api_key'},
            )

            result = response.json()
            print(result['sr']['state'])
        - lang: curl
          label: cURL
          source: >-
            curl -X POST
            'https://api.legitmark.com/api/v2/sr/8e61c991-553a-4a58-9eb6-561b64c11908/submit'
            \
              -H 'Authorization: Bearer leo_your_api_key'
components:
  schemas:
    ErrorResponse:
      type: object
      properties:
        success:
          type: boolean
          example: false
        error:
          type: object
          properties:
            code:
              type: integer
            timestamp:
              type: string
              format: date-time
            message:
              type: string
            details:
              type: string
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >-
        Bearer token authentication. Use your API key in the format: Bearer
        leo_xxxxxxxx
      x-default: leo_your_api_key_here

````