openapi: 3.0.1
info:
  title: Admin Panel APIs
  version: 1.0.0
  description: >-
    The Admin Panel APIs provide endpoints for managing organizations, users,
    roles, system configurations, and security features. They also support
    timestamp-based access controls and geo-fencing to enhance security and
    compliance.
  contact:
    name: IVALT Support
    url: https://ivalt.com/support
    email: support@ivalt.com
  license:
    name: Proprietary and Confidential
    url: https://ivalt.com/terms
tags:
  - name: Admin Panel Apis
    description: >-
      Admin Panel APIs for organization, user, and role management. Includes
      system configurations, security controls, timestamps, and geo-fencing
      features.
servers:
  - url: https://api.ivalt.com/admin/public/api
    description: Production server
security:
  - ApiKeyAuth: []
paths:
  /user/{user_id}/organizations/{org_code}:
    get:
      summary: Get Organization by Slug/Code
      operationId: getUserOrganizationsIvalt
      tags:
        - Admin Panel Apis
      parameters:
        - name: user_id
          in: path
          required: true
          schema:
            type: integer
            description: >-
              User id path parameter for GET
              /user/{user_id}/organizations/{org_code}.
          example: 561
          description: User Id provided via path.
        - name: org_code
          in: path
          required: true
          schema:
            type: string
            description: >-
              Org code path parameter for GET
              /user/{user_id}/organizations/{org_code}.
          example: test
          description: Org Code provided via path.
      responses:
        '200':
          description: Organization details fetched successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Get Organization by Slug/Code
        '400':
          description: Bad request - missing or invalid data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized - invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      description: Retrieve a Organization. in the Admin Panel Apis domain
  /organization/{org_id}/get-org-auth-codes:
    get:
      summary: Get Organization Auth Codes
      operationId: getOrganizationAuthCodes
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          schema:
            type: integer
            description: >-
              Org id path parameter for GET
              /organization/{org_id}/get-org-auth-codes.
          example: 32
          description: Org Id provided via path.
      responses:
        '200':
          description: Organization authentication codes fetched successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Get Organization Auth Codes
        '400':
          description: Bad request - missing or invalid data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized - invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      description: Retrieve a Get Org Auth Code. in the Admin Panel Apis domain
  /organizations:
    get:
      summary: List All Organizations
      operationId: listOrganizations
      tags:
        - Admin Panel Apis
      parameters: []
      responses:
        '200':
          description: List of organizations fetched successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: List All Organizations
        '400':
          description: Bad request - missing or invalid data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized - invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      description: Retrieve a list of Organizations. in the Admin Panel Apis domain
  /make-admin:
    post:
      summary: Make a User Admin of Organization
      operationId: makeUserAdmin
      tags:
        - Admin Panel Apis
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                mobile_with_country_code:
                  type: string
                  example: '+916283974746'
                  description: Mobile with country code of post /make-admin request.
                organization_name:
                  type: string
                  example: Bikram1
                  description: Organization name of post /make-admin request.
                organization_code:
                  type: string
                  example: '1123'
                  description: Organization code of post /make-admin request.
                has_geo_fencing:
                  type: integer
                  example: 1
                  description: Has geo fencing of post /make-admin request.
                number_geo_fencing:
                  type: integer
                  example: 0
                  description: Number geo fencing of post /make-admin request.
              required:
                - mobile_with_country_code
                - organization_name
                - organization_code
                - has_geo_fencing
                - number_geo_fencing
              description: POST /make-admin request definition.
        description: Request payload for make-admin POST.
      responses:
        '200':
          description: User promoted to admin successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Make a User Admin of Organization
        '400':
          description: Invalid request data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      description: Create a new Make Admin. in the Admin Panel Apis domain
  /organization/{org_id}/get-org-api-creds:
    get:
      summary: get-org-api-creds
      description: Retrieve organization API credentials
      operationId: getOrganizationOrgIdGetOrgApiCreds
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          schema:
            type: string
            description: >-
              Org id path parameter for GET
              /organization/{org_id}/get-org-api-creds.
          description: Organization ID
      responses:
        '200':
          $ref: '#/components/responses/SuccessResponse'
          description: HTTP 200 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Get-org-api-creds
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
  /organization/create:
    post:
      summary: Create Organization
      description: Create a new organization
      operationId: createOrganization
      tags:
        - Admin Panel Apis
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: Name of post /organization/create request.
                organization_code:
                  type: string
                  description: Organization code of post /organization/create request.
                  example: ivalt-labs
                has_geo_fencing:
                  type: integer
                  description: Has geo fencing of post /organization/create request.
                  example: 1
                number_geo_fencing:
                  type: integer
                  description: Number geo fencing of post /organization/create request.
                  example: 5
                is_active:
                  type: integer
                  description: Is active of post /organization/create request.
                  example: 1
              required:
                - name
                - organization_code
                - has_geo_fencing
                - number_geo_fencing
                - is_active
              description: POST /organization/create request definition.
            example:
              name: local testing
              organization_code: test
              has_geo_fencing: 0
              number_geo_fencing: 5
              is_active: 0
        description: Request payload for create POST.
      responses:
        '200':
          $ref: '#/components/responses/SuccessResponse'
          description: HTTP 200 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Create Organization
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
  /organization/{org_id}/auth0-api-creds:
    post:
      summary: Organization Auth0 API Credentials
      description: Save Auth0 API credentials for an organization
      operationId: postOrganizationAuth0ApiCreds
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          schema:
            type: integer
            description: >-
              Org id path parameter for POST
              /organization/{org_id}/auth0-api-creds.
          example: 32
          description: Org Id provided via path.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                domain:
                  type: string
                  description: >-
                    Domain of post /organization/{org_id}/auth0-api-creds
                    request.
                client_id:
                  type: string
                  description: >-
                    Client id of post /organization/{org_id}/auth0-api-creds
                    request.
                client_secret:
                  type: string
                  description: >-
                    Client secret of post /organization/{org_id}/auth0-api-creds
                    request.
                grant_type:
                  type: string
                  description: >-
                    Grant type of post /organization/{org_id}/auth0-api-creds
                    request.
                audience:
                  type: string
                  description: >-
                    Audience of post /organization/{org_id}/auth0-api-creds
                    request.
              required:
                - domain
                - client_id
                - client_secret
                - grant_type
                - audience
              description: POST /organization/{org_id}/auth0-api-creds request definition.
            example:
              domain: check
              client_id: test
              client_secret: secret
              grant_type: client_credentials
              audience: https://example.com
        description: Request payload for auth0-api-cred POST.
      responses:
        '200':
          $ref: '#/components/responses/SuccessResponse'
          description: HTTP 200 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Organization Auth0 API Credentials
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
  /organization/create/onboarding:
    post:
      summary: Create Onboarding Organization
      description: Create an onboarding organization
      operationId: createOrganizationOnboarding
      tags:
        - Admin Panel Apis
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                organization_name:
                  type: string
                  description: >-
                    Organization name of post /organization/create/onboarding
                    request.
                organization_code:
                  type: string
                  description: >-
                    Organization code of post /organization/create/onboarding
                    request.
                  example: ivalt-labs
              required:
                - organization_name
                - organization_code
              description: POST /organization/create/onboarding request definition.
            example:
              organization_name: Testing
              organization_code: test
        description: Request payload for onboarding POST.
      responses:
        '200':
          $ref: '#/components/responses/SuccessResponse'
          description: HTTP 200 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Create Onboarding Organization
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
  /organization/user/details:
    post:
      summary: Organization User Details
      description: Fetch organization user details
      operationId: postOrganizationUserDetails
      tags:
        - Admin Panel Apis
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                client_id:
                  type: string
                  description: Client id of post /organization/user/details request.
              required:
                - client_id
              description: POST /organization/user/details request definition.
            example:
              client_id: NO7S-MKCF-YXM5-KXDB
        description: Request payload for detail POST.
      responses:
        '200':
          $ref: '#/components/responses/SuccessResponse'
          description: HTTP 200 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Organization User Details
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
  /organization/remove/user:
    post:
      summary: Remove User from Organization
      description: Removes a user from the specified organization.
      tags:
        - Admin Panel Apis
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                org_id:
                  type: string
                  example: '56'
                  description: Org id of post /organization/remove/user request.
                country_code:
                  type: string
                  example: '+91'
                  description: Country code of post /organization/remove/user request.
                mobile:
                  type: string
                  example: '6283974746'
                  description: Mobile of post /organization/remove/user request.
              required:
                - org_id
                - country_code
                - mobile
              description: POST /organization/remove/user request definition.
        description: Request payload for user POST.
      responses:
        '200':
          description: User removed successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Remove User from Organization
        '400':
          description: Bad request – invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized – invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      security:
        - ApiKeyAuth: []
      operationId: removeOrganizationUser
  /organization/{org_id}/create/auth-code:
    post:
      summary: Create Organization Auth Code
      description: Generates a new authentication code for the given organization.
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          schema:
            type: string
            description: >-
              Org id path parameter for POST
              /organization/{org_id}/create/auth-code.
          description: 'Path parameter: id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                client_id:
                  type: string
                  example: testClient123
                  description: >-
                    Client id of post /organization/{org_id}/create/auth-code
                    request.
                client_secret:
                  type: string
                  example: SecretKey123
                  description: >-
                    Client secret of post
                    /organization/{org_id}/create/auth-code request.
              required:
                - client_id
                - client_secret
              description: POST /organization/{org_id}/create/auth-code request definition.
        description: Request payload for auth-code POST.
      responses:
        '200':
          description: Auth code created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Create Organization Auth Code
        '400':
          description: Bad request – invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized – invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      security:
        - ApiKeyAuth: []
      operationId: createOrganizationAuthCode
  /organization/{org_id}/update:
    put:
      summary: Update Organization
      description: Updates the details of an organization.
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          schema:
            type: string
            description: Org id path parameter for PUT /organization/{org_id}/update.
          description: 'Path parameter: id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  example: iVALT
                  description: Name of put /organization/{org_id}/update request.
                organization_code:
                  type: string
                  example: iVALT-1002wew
                  description: >-
                    Organization code of put /organization/{org_id}/update
                    request.
                has_geo_fencing:
                  type: integer
                  example: 1
                  description: >-
                    Has geo fencing of put /organization/{org_id}/update
                    request.
                is_active:
                  type: integer
                  example: 0
                  description: Is active of put /organization/{org_id}/update request.
                number_geo_fencing:
                  type: integer
                  example: 5
                  description: >-
                    Number geo fencing of put /organization/{org_id}/update
                    request.
              required:
                - name
                - organization_code
                - has_geo_fencing
                - is_active
                - number_geo_fencing
              description: PUT /organization/{org_id}/update request definition.
        description: Request payload for update PUT.
      responses:
        '200':
          description: Organization updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Update Organization
        '400':
          description: Bad request – invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized – invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      security:
        - ApiKeyAuth: []
      operationId: updateOrganization
  /organization/{org_id}/delete:
    delete:
      summary: Delete Organization
      description: Deletes an organization by its ID.
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          schema:
            type: string
            description: Org id path parameter for DELETE /organization/{org_id}/delete.
          description: 'Path parameter: id'
      responses:
        '200':
          description: Organization deleted successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Delete Organization
        '400':
          description: Bad request – invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized – invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      security:
        - ApiKeyAuth: []
      operationId: deleteOrganization
  /organization/{org_id}/users:
    get:
      summary: Get All Users of Organization
      description: Fetches all users associated with an organization.
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          schema:
            type: string
            description: Org id path parameter for GET /organization/{org_id}/users.
          description: 'Path parameter: id'
      responses:
        '200':
          description: List of users retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Get All Users of Organization
        '400':
          description: Bad request – invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized – invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      security:
        - ApiKeyAuth: []
      operationId: getOrganizationUsers
  /organization/{orgId}/user/{userId}:
    get:
      summary: Get Specific User of Organization
      description: Fetches details of a specific user within an organization.
      tags:
        - Admin Panel Apis
      parameters:
        - name: orgId
          in: path
          required: true
          schema:
            type: string
            description: Orgid path parameter for GET /organization/{orgId}/user/{userId}.
          description: 'Path parameter: orgId'
        - name: userId
          in: path
          required: true
          schema:
            type: string
            description: Userid path parameter for GET /organization/{orgId}/user/{userId}.
          description: 'Path parameter: userId'
      responses:
        '200':
          description: User details retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Get Specific User of Organization
        '400':
          description: Bad request – invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized – missing or invalid API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: getOrganizationUser
  /organization/{orgId}/create/user:
    post:
      summary: Create User for Organization
      description: Creates a new user under the specified organization.
      tags:
        - Admin Panel Apis
      parameters:
        - name: orgId
          in: path
          required: true
          schema:
            type: string
            description: Orgid path parameter for POST /organization/{orgId}/create/user.
          description: 'Path parameter: orgId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: Name of post /organization/{orgid}/create/user request.
                country_code:
                  type: string
                  description: >-
                    Country code of post /organization/{orgid}/create/user
                    request.
                  example: '+91'
                user_code:
                  type: integer
                  description: User code of post /organization/{orgid}/create/user request.
                mobile:
                  type: string
                  description: Mobile of post /organization/{orgid}/create/user request.
                  example: '6283974746'
                device_token:
                  type: string
                  description: >-
                    Device token of post /organization/{orgid}/create/user
                    request.
                imei:
                  type: string
                  description: Imei of post /organization/{orgid}/create/user request.
                email:
                  type: string
                  description: Email of post /organization/{orgid}/create/user request.
                  example: admin@example.com
                platform:
                  type: string
                  description: Platform of post /organization/{orgid}/create/user request.
                  example: android
                is_admin:
                  type: integer
                  description: Is admin of post /organization/{orgid}/create/user request.
              required:
                - name
                - country_code
                - user_code
                - mobile
                - device_token
                - imei
                - email
                - platform
                - is_admin
              description: POST /organization/{orgId}/create/user request definition.
            example:
              name: bikram
              country_code: '+91'
              user_code: 4775
              mobile: '12345678'
              device_token: cNZpGXy3ST2Ys3fbN-Rik1:APA91bGjI3MlTcNJU2h94X1k
              imei: ED9F012A-3991-4BF5-83EB-685F56FA57B7
              email: bikramjeet@ivalt.com
              platform: android
              is_admin: 1
        description: Request payload for user POST.
      responses:
        '200':
          description: User created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Create User for Organization
        '400':
          description: Bad request – invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized – missing or invalid API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: createOrganizationUser
  /organization/{orgId}/update/user/{userId}:
    put:
      summary: Update Organization User
      description: Updates the details of a specific user in an organization.
      tags:
        - Admin Panel Apis
      parameters:
        - name: orgId
          in: path
          required: true
          schema:
            type: string
            description: >-
              Orgid path parameter for PUT
              /organization/{orgId}/update/user/{userId}.
          description: 'Path parameter: orgId'
        - name: userId
          in: path
          required: true
          schema:
            type: string
            description: >-
              Userid path parameter for PUT
              /organization/{orgId}/update/user/{userId}.
          description: 'Path parameter: userId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                email:
                  type: string
                  description: >-
                    Email of put /organization/{orgid}/update/user/{userid}
                    request.
                  example: admin@example.com
                name:
                  type: string
                  description: >-
                    Name of put /organization/{orgid}/update/user/{userid}
                    request.
                verify_timeslots:
                  type: string
                  description: >-
                    Verify timeslots of put
                    /organization/{orgid}/update/user/{userid} request.
                timeslots:
                  type: string
                  description: >-
                    Timeslots of put /organization/{orgid}/update/user/{userid}
                    request.
              required:
                - email
                - name
                - verify_timeslots
                - timeslots
              description: >-
                PUT /organization/{orgId}/update/user/{userId} request
                definition.
            example:
              email: bikramjeet@ivalt.com
              name: Bikramjeet Singh
              verify_timeslots: 'on'
              timeslots: >-
                [{"timezone":"UTC","start_time":"2023-05-08T09:39:00Z","end_time":"2023-05-08T21:39:00Z","status":1,"user_id":32,"org_id":"272"}]
        description: Request payload for user PUT.
      responses:
        '200':
          description: User updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Update Organization User
        '400':
          description: Bad request – invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized – missing or invalid API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: updateOrganizationUser
  /organization/{orgId}/update/auth-code/{authCodeId}:
    put:
      summary: Update Organization Auth Code
      description: Updates an authentication code for the specified organization.
      tags:
        - Admin Panel Apis
      parameters:
        - name: orgId
          in: path
          required: true
          schema:
            type: string
            description: >-
              Orgid path parameter for PUT
              /organization/{orgId}/update/auth-code/{authCodeId}.
          description: 'Path parameter: orgId'
        - name: authCodeId
          in: path
          required: true
          schema:
            type: string
            description: >-
              Authcodeid path parameter for PUT
              /organization/{orgId}/update/auth-code/{authCodeId}.
          description: 'Path parameter: authCodeId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                client_id:
                  type: string
                  description: >-
                    Client id of put
                    /organization/{orgid}/update/auth-code/{authcodeid} request.
                client_secret:
                  type: string
                  description: >-
                    Client secret of put
                    /organization/{orgid}/update/auth-code/{authcodeid} request.
              required:
                - client_id
                - client_secret
              description: >-
                PUT /organization/{orgId}/update/auth-code/{authCodeId} request
                definition.
            example:
              client_id: dshfosdhfg
              client_secret: sdfgsdgds
        description: Request payload for auth-code PUT.
      responses:
        '200':
          description: Auth code updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Update Organization Auth Code
        '400':
          description: Bad request – invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized – missing or invalid API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: updateOrganizationAuthCode
  /organization/{orgId}/delete/user/{userId}:
    delete:
      summary: Delete Organization User
      description: Deletes a specific user from an organization.
      tags:
        - Admin Panel Apis
      parameters:
        - name: orgId
          in: path
          required: true
          schema:
            type: string
            description: >-
              Orgid path parameter for DELETE
              /organization/{orgId}/delete/user/{userId}.
          description: 'Path parameter: orgId'
        - name: userId
          in: path
          required: true
          schema:
            type: string
            description: >-
              Userid path parameter for DELETE
              /organization/{orgId}/delete/user/{userId}.
          description: 'Path parameter: userId'
      responses:
        '200':
          description: User deleted successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Delete Organization User
        '400':
          description: Bad request – invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized – missing or invalid API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: deleteOrganizationUser
  /organization/{org_id}/delete/auth-code/{auth_code_id}:
    delete:
      summary: Delete Organization Auth Code
      description: Delete specific organization auth code
      tags:
        - Admin Panel Apis
      parameters:
        - name: auth_code_id
          in: path
          required: true
          description: ID of the auth code
          schema:
            type: integer
            description: >-
              Auth code id path parameter for DELETE
              /organization/{org_id}/delete/auth-code/{auth_code_id}.
          example: 3
        - name: org_id
          in: path
          required: true
          description: Organization ID
          schema:
            type: integer
            description: >-
              Org id path parameter for DELETE
              /organization/{org_id}/delete/auth-code/{auth_code_id}.
          example: 32
      responses:
        '200':
          $ref: '#/components/responses/SuccessResponse'
          description: HTTP 200 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Delete Organization Auth Code
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: deleteOrganizationAuthCode
  /organization/{org_id}/user/{user_id}/accept:
    post:
      summary: Accept Organization User
      description: Accept a pending organization user
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          description: Organization ID
          schema:
            type: integer
            description: >-
              Org id path parameter for POST
              /organization/{org_id}/user/{user_id}/accept.
          example: 56
        - name: user_id
          in: path
          required: true
          description: User ID
          schema:
            type: integer
            description: >-
              User id path parameter for POST
              /organization/{org_id}/user/{user_id}/accept.
          example: 556
      requestBody:
        content:
          application/json:
            schema:
              type: object
              description: >-
                POST /organization/{org_id}/user/{user_id}/accept request
                definition.
              properties: {}
            example: {}
        description: Request payload for accept POST.
      responses:
        '200':
          $ref: '#/components/responses/SuccessResponse'
          description: HTTP 200 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Accept Organization User
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: acceptOrganizationUser
  /organization/{org_id}/user/{user_id}/reject:
    post:
      summary: Reject Organization User
      description: Reject a pending organization user
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          description: Organization ID
          schema:
            type: integer
            description: >-
              Org id path parameter for POST
              /organization/{org_id}/user/{user_id}/reject.
          example: 4
        - name: user_id
          in: path
          required: true
          description: User ID
          schema:
            type: integer
            description: >-
              User id path parameter for POST
              /organization/{org_id}/user/{user_id}/reject.
          example: 250
      requestBody:
        content:
          application/json:
            schema:
              type: object
              description: >-
                POST /organization/{org_id}/user/{user_id}/reject request
                definition.
              properties: {}
            example: {}
        description: Request payload for reject POST.
      responses:
        '200':
          $ref: '#/components/responses/SuccessResponse'
          description: HTTP 200 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Reject Organization User
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: rejectOrganizationUser
  /organization/{org_id}/user/{user_id}/pending:
    post:
      summary: Create Pending User
      description: Move a user into pending state for an organization
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          description: Organization ID
          schema:
            type: integer
            description: >-
              Org id path parameter for POST
              /organization/{org_id}/user/{user_id}/pending.
          example: 60
        - name: user_id
          in: path
          required: true
          description: User ID
          schema:
            type: integer
            description: >-
              User id path parameter for POST
              /organization/{org_id}/user/{user_id}/pending.
          example: 561
      requestBody:
        content:
          application/json:
            schema:
              type: object
              description: >-
                POST /organization/{org_id}/user/{user_id}/pending request
                definition.
              properties: {}
            example: {}
        description: Request payload for pending POST.
      responses:
        '200':
          $ref: '#/components/responses/SuccessResponse'
          description: HTTP 200 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Create Pending User
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: postOrganizationUserPending
  /organization/{org_id}/pending/users:
    get:
      summary: Get Pending Users
      description: Retrieve all pending users of an organization
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          description: Organization ID
          schema:
            type: integer
            description: >-
              Org id path parameter for GET
              /organization/{org_id}/pending/users.
          example: 32
      responses:
        '200':
          $ref: '#/components/responses/SuccessResponse'
          description: HTTP 200 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Get Pending Users
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: getOrganizationPendingUsers
  /organization/{org_id}/geo-fences:
    get:
      summary: Get All Geo Fencing of Organization
      description: Retrieve all geo fences for the organization
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          schema:
            type: integer
            description: Org id path parameter for GET /organization/{org_id}/geo-fences.
          example: 32
          description: Org Id provided via path.
      responses:
        '200':
          description: Geo fences retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Get All Geo Fencing of Organization
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: getOrganizationGeoFences
  /organization/{org_id}/geo-fence/{id}:
    get:
      summary: Get Specific Geo Fencing of Organization
      description: Retrieve details of a specific geo fence by ID
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          schema:
            type: integer
            description: >-
              Org id path parameter for GET
              /organization/{org_id}/geo-fence/{id}.
          example: 32
          description: Org Id provided via path.
        - name: id
          in: path
          required: true
          schema:
            type: integer
            description: Id path parameter for GET /organization/{org_id}/geo-fence/{id}.
          example: 32
          description: Id provided via path.
      responses:
        '200':
          description: Geo fence retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Get Specific Geo Fencing of Organization
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: getOrganizationGeoFence
  /organization/{org_id}/create/geo-fence:
    post:
      summary: Create Geo Fencing for Organization
      description: Create a new geo fence for the organization
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          schema:
            type: integer
            description: >-
              Org id path parameter for POST
              /organization/{org_id}/create/geo-fence.
          example: 32
          description: Org Id provided via path.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - name
                - latitude
                - longitude
                - radius
                - is_active
              properties:
                name:
                  type: string
                  description: >-
                    Name of post /organization/{org_id}/create/geo-fence
                    request.
                latitude:
                  type: number
                  description: >-
                    Latitude of post /organization/{org_id}/create/geo-fence
                    request.
                  example: 31.634
                longitude:
                  type: number
                  description: >-
                    Longitude of post /organization/{org_id}/create/geo-fence
                    request.
                  example: 74.8723
                radius:
                  type: integer
                  description: >-
                    Radius of post /organization/{org_id}/create/geo-fence
                    request.
                  example: 100
                is_active:
                  type: integer
                  description: >-
                    Is active of post /organization/{org_id}/create/geo-fence
                    request.
                  example: 1
              example:
                name: Amritsar
                latitude: 31.634
                longitude: 74.8723
                radius: 50
                is_active: 1
              description: POST /organization/{org_id}/create/geo-fence request definition.
        description: Request payload for geo-fence POST.
      responses:
        '200':
          description: Geo fence created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Create Geo Fencing for Organization
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: createOrganizationGeoFence
  /organization/{org_id}/delete/geo-fence/{id}:
    delete:
      summary: Delete Geo Fencing of Organization
      description: Delete a geo fence by ID from the organization
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          schema:
            type: integer
            description: >-
              Org id path parameter for DELETE
              /organization/{org_id}/delete/geo-fence/{id}.
          example: 32
          description: Org Id provided via path.
        - name: id
          in: path
          required: true
          schema:
            type: integer
            description: >-
              Id path parameter for DELETE
              /organization/{org_id}/delete/geo-fence/{id}.
          example: 32
          description: Id provided via path.
      responses:
        '200':
          description: Geo fence deleted successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Delete Geo Fencing of Organization
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: deleteOrganizationGeoFence
  /organization/{org_id}/update/geo-fence/{id}:
    put:
      summary: Update Geo Fencing of Organization
      description: Update details of a specific geo fence
      tags:
        - Admin Panel Apis
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: integer
            description: >-
              Id path parameter for PUT
              /organization/{org_id}/update/geo-fence/{id}.
          example: 2
          description: Id provided via path.
        - name: org_id
          in: path
          required: true
          schema:
            type: integer
            description: >-
              Org id path parameter for PUT
              /organization/{org_id}/update/geo-fence/{id}.
          example: 32
          description: Org Id provided via path.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - name
                - latitude
                - longitude
                - radius
                - is_active
              properties:
                name:
                  type: string
                  description: >-
                    Name of put /organization/{org_id}/update/geo-fence/{id}
                    request.
                latitude:
                  type: number
                  description: >-
                    Latitude of put /organization/{org_id}/update/geo-fence/{id}
                    request.
                  example: 31.634
                longitude:
                  type: number
                  description: >-
                    Longitude of put
                    /organization/{org_id}/update/geo-fence/{id} request.
                  example: 74.8723
                radius:
                  type: integer
                  description: >-
                    Radius of put /organization/{org_id}/update/geo-fence/{id}
                    request.
                  example: 100
                is_active:
                  type: integer
                  description: >-
                    Is active of put
                    /organization/{org_id}/update/geo-fence/{id} request.
                  example: 1
              example:
                name: Amritsar Main Office
                latitude: 31.634
                longitude: 74.8723
                radius: 75
                is_active: 1
              description: >-
                PUT /organization/{org_id}/update/geo-fence/{id} request
                definition.
        description: Request payload for geo-fence PUT.
      responses:
        '200':
          description: Geo fence updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Update Geo Fencing of Organization
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: updateOrganizationGeoFence
  /organization/{org_id}/timeslots:
    get:
      summary: Get Organization Timeslots
      description: Retrieve timeslots for an organization
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          description: Organization ID
          schema:
            type: integer
            description: Org id path parameter for GET /organization/{org_id}/timeslots.
          example: 32
      responses:
        '200':
          $ref: '#/components/responses/SuccessResponse'
          description: HTTP 200 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Get Organization Timeslots
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: getOrganizationTimeslots
  /organization/{org_id}/timeslots/add:
    post:
      summary: Add Organization Timeslot
      description: Add a new timeslot for an organization
      tags:
        - Admin Panel Apis
      parameters:
        - name: org_id
          in: path
          required: true
          description: Organization ID
          schema:
            type: integer
            description: >-
              Org id path parameter for POST
              /organization/{org_id}/timeslots/add.
          example: 32
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                timezone:
                  type: object
                  properties:
                    value:
                      type: string
                      description: >-
                        Value of post /organization/{org_id}/timeslots/add
                        request → timezone.
                    label:
                      type: string
                      description: >-
                        Label of post /organization/{org_id}/timeslots/add
                        request → timezone.
                    offset:
                      type: number
                      description: >-
                        Offset of post /organization/{org_id}/timeslots/add
                        request → timezone.
                    abbrev:
                      type: string
                      description: >-
                        Abbrev of post /organization/{org_id}/timeslots/add
                        request → timezone.
                    altName:
                      type: string
                      description: >-
                        Altname of post /organization/{org_id}/timeslots/add
                        request → timezone.
                  required:
                    - value
                    - label
                    - offset
                    - abbrev
                    - altName
                  description: >-
                    Timezone of post /organization/{org_id}/timeslots/add
                    request.
                start_time:
                  type: string
                  description: >-
                    Start time of post /organization/{org_id}/timeslots/add
                    request.
                end_time:
                  type: string
                  description: >-
                    End time of post /organization/{org_id}/timeslots/add
                    request.
                status:
                  type: integer
                  description: Status of post /organization/{org_id}/timeslots/add request.
              required:
                - timezone
                - start_time
                - end_time
                - status
              description: POST /organization/{org_id}/timeslots/add request definition.
            example:
              timezone:
                value: Asia/Kolkata
                label: (GMT+5:30) Chennai, Kolkata, Mumbai, New Delhi
                offset: 5.5
                abbrev: IST
                altName: India Standard Time
              start_time: '2024-06-04T18:30:00.081Z'
              end_time: '2024-06-05T11:30:00.081Z'
              status: 0
        description: Request payload for add POST.
      responses:
        '200':
          $ref: '#/components/responses/SuccessResponse'
          description: HTTP 200 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Add Organization Timeslot
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: postOrganizationTimeslotAdd
  /timeslot/{timeslot_id}/update:
    put:
      summary: Update Timeslot
      description: Update an existing timeslot
      tags:
        - Admin Panel Apis
      parameters:
        - name: timeslot_id
          in: path
          required: true
          description: Timeslot ID
          schema:
            type: integer
            description: Timeslot id path parameter for PUT /timeslot/{timeslot_id}/update.
          example: 563
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                timezone:
                  type: object
                  properties:
                    value:
                      type: string
                      description: >-
                        Value of put /timeslot/{timeslot_id}/update request →
                        timezone.
                    label:
                      type: string
                      description: >-
                        Label of put /timeslot/{timeslot_id}/update request →
                        timezone.
                    offset:
                      type: number
                      description: >-
                        Offset of put /timeslot/{timeslot_id}/update request →
                        timezone.
                    abbrev:
                      type: string
                      description: >-
                        Abbrev of put /timeslot/{timeslot_id}/update request →
                        timezone.
                    altName:
                      type: string
                      description: >-
                        Altname of put /timeslot/{timeslot_id}/update request →
                        timezone.
                  required:
                    - value
                    - label
                    - offset
                    - abbrev
                    - altName
                  description: Timezone of put /timeslot/{timeslot_id}/update request.
                start_time:
                  type: string
                  description: Start time of put /timeslot/{timeslot_id}/update request.
                end_time:
                  type: string
                  description: End time of put /timeslot/{timeslot_id}/update request.
                status:
                  type: integer
                  description: Status of put /timeslot/{timeslot_id}/update request.
              required:
                - timezone
                - start_time
                - end_time
                - status
              description: PUT /timeslot/{timeslot_id}/update request definition.
            example:
              timezone:
                value: Asia/Kolkata
                label: (GMT+5:30) Chennai, Kolkata, Mumbai, New Delhi
                offset: 5.5
                abbrev: IST
                altName: India Standard Time
              start_time: '2024-06-04T18:30:00.081Z'
              end_time: '2024-06-05T11:30:00.081Z'
              status: 0
        description: Request payload for update PUT.
      responses:
        '200':
          $ref: '#/components/responses/SuccessResponse'
          description: HTTP 200 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Update Timeslot
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: putUpdateTimeslot
  /timeslot/{timeslot_id}/delete:
    delete:
      summary: Delete Timeslot
      description: Delete an existing timeslot
      tags:
        - Admin Panel Apis
      parameters:
        - name: timeslot_id
          in: path
          required: true
          description: Timeslot ID
          schema:
            type: integer
            description: >-
              Timeslot id path parameter for DELETE
              /timeslot/{timeslot_id}/delete.
          example: 563
      responses:
        '200':
          $ref: '#/components/responses/SuccessResponse'
          description: HTTP 200 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Delete Timeslot
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      operationId: deleteTimeslot
  /user/{userId}/timeslots:
    get:
      summary: Get User Timeslots
      description: Fetches all timeslots assigned to a specific user.
      tags:
        - Admin Panel Apis
      parameters:
        - name: userId
          in: path
          required: true
          schema:
            type: string
            description: Userid path parameter for GET /user/{userId}/timeslots.
          description: 'Path parameter: userId'
      responses:
        '200':
          description: Timeslots retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Get User Timeslots
        '400':
          description: Bad request – invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized – invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      security:
        - ApiKeyAuth: []
      operationId: getUserTimeslots
  /user/{userId}/timeslots/update:
    put:
      summary: Update User Timeslots
      description: Updates the timeslots for a specific user.
      tags:
        - Admin Panel Apis
      parameters:
        - name: userId
          in: path
          required: true
          schema:
            type: string
            description: Userid path parameter for PUT /user/{userId}/timeslots/update.
          description: 'Path parameter: userId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                timeslot_ids:
                  type: integer
                  example: 95
                  description: Timeslot ids of put /user/{userid}/timeslots/update request.
              required:
                - timeslot_ids
              description: PUT /user/{userId}/timeslots/update request definition.
        description: Request payload for update PUT.
      responses:
        '200':
          description: Timeslots updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Update User Timeslots
        '400':
          description: Bad request – invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized – invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      security:
        - ApiKeyAuth: []
      operationId: updateUserTimeslots
  /user/{userId}/geofences:
    get:
      summary: Get User Geofences
      description: Fetches all geofences assigned to a specific user.
      tags:
        - Admin Panel Apis
      parameters:
        - name: userId
          in: path
          required: true
          schema:
            type: string
            description: Userid path parameter for GET /user/{userId}/geofences.
          description: 'Path parameter: userId'
      responses:
        '200':
          description: Geofences retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Get User Geofences
        '400':
          description: Bad request – invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized – invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      security:
        - ApiKeyAuth: []
      operationId: getUserGeofences
  /user/{userId}/geofences/update:
    put:
      summary: Update User Geofences
      description: Updates geofences for a specific user.
      tags:
        - Admin Panel Apis
      parameters:
        - name: userId
          in: path
          required: true
          schema:
            type: string
            description: Userid path parameter for PUT /user/{userId}/geofences/update.
          description: 'Path parameter: userId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                orgGeoFence_ids:
                  type: integer
                  example: 52
                  description: >-
                    Orggeofence ids of put /user/{userid}/geofences/update
                    request.
              required:
                - orgGeoFence_ids
              description: PUT /user/{userId}/geofences/update request definition.
        description: Request payload for update PUT.
      responses:
        '200':
          description: Geofences updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Update User Geofences
        '400':
          description: Bad request – invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: Unauthorized – invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      security:
        - ApiKeyAuth: []
      operationId: updateUserGeofences
  /organization/{orgIdOrSlug}:
    get:
      summary: Get Organization by ID or Slug
      tags:
        - Admin Panel Apis
      operationId: getOrganizationByIdOrSlug
      parameters:
        - name: orgIdOrSlug
          in: path
          required: true
          schema:
            type: string
            description: Orgidorslug path parameter for GET /organization/{orgIdOrSlug}.
          description: Organization ID or Slug
      responses:
        '200':
          description: Organization details retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Get Organization by ID or Slug
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      description: Retrieve a Organization. in the Admin Panel Apis domain
  /organization/user/getOrganizations:
    post:
      summary: Get Organizations of User
      tags:
        - Admin Panel Apis
      operationId: getOrganizationsOfUser
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                mobile_number:
                  type: string
                  example: '+916283974746'
                  description: >-
                    Mobile number of post /organization/user/getorganizations
                    request.
              required:
                - mobile_number
              description: POST /organization/user/getOrganizations request definition.
        description: Request payload for getOrganization POST.
      responses:
        '200':
          description: List of organizations retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    status: success
                    message: Get Organizations of User
        '400':
          description: HTTP 400 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  summary: Validation error
                  value:
                    status: error
                    message: Bad request - missing or invalid data
        '401':
          description: HTTP 401 response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Invalid or missing API key
                  value:
                    status: error
                    message: Unauthorized - missing or invalid API key
      description: Create a new Getorganization. in the Admin Panel Apis domain
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: API key needed for authenticating requests.
  responses:
    SuccessResponse:
      description: Successful operation
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SuccessResponse'
          examples:
            success:
              summary: Example success
              value:
                status: success
                message: Operation completed successfully
  schemas:
    SuccessResponse:
      title: Success Response
      type: object
      description: Standard response for successful requests.
      properties:
        status:
          type: string
          enum:
            - success
          description: Outcome of the request. Always `success` for 2xx responses.
          example: success
        message:
          type: string
          description: Short description of the successful operation outcome.
          example: Operation completed successfully
      required:
        - status
        - message
    ErrorResponse:
      title: Error Response
      type: object
      description: Standard response for client or server errors.
      properties:
        status:
          type: string
          enum:
            - error
          description: Outcome of the request. Always `error` for 4xx/5xx responses.
          example: error
        message:
          type: string
          description: Detailed explanation of the error to help clients fix the request..
          example: Bad request - missing or invalid data
      required:
        - status
        - message
