Quinyx Group Locations API

The Group Locations API from Quinyx — 2 operation(s) for group locations.

OpenAPI Specification

quinyx-group-locations-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Quinyx Absence Schedules Group Locations API
  version: v2
  x-service: absence-schedule
  description: null
servers:
- url: https://api.quinyx.com
  description: Production API
- url: https://api-rc.quinyx.com
  description: RC API
tags:
- name: Group Locations
  x-displayName: Group Locations
paths:
  /v2/organisation/groups/{groupId}/locations/{locationId}:
    get:
      tags:
      - Group Locations
      summary: Get group location by group id and location id
      operationId: getGroupLocation
      parameters:
      - name: groupId
        in: path
        required: true
        schema:
          type: integer
          format: int32
      - name: locationId
        in: path
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/organisation_GroupLocationResponseDto'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organisation_UnauthorizedErrorResponseDto'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/organisation_ValidationErrorDto'
        '404':
          description: Group not found or location not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organisation_ApiErrorResponseDto'
      x-audience: public
    put:
      tags:
      - Group Locations
      summary: Update group location
      operationId: updateGroupLocation
      parameters:
      - name: groupId
        in: path
        required: true
        schema:
          type: integer
          format: int32
      - name: locationId
        in: path
        required: true
        schema:
          type: integer
          format: int32
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/organisation_GroupLocationRequestDto'
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/organisation_GroupLocationResponseDto'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/organisation_ValidationErrorDto'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organisation_UnauthorizedErrorResponseDto'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/organisation_ValidationErrorDto'
        '404':
          description: Domain not found or location not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organisation_ApiErrorResponseDto'
      x-audience: public
    delete:
      tags:
      - Group Locations
      summary: Delete group location
      operationId: deleteGroupLocation
      parameters:
      - name: groupId
        in: path
        required: true
        schema:
          type: integer
          format: int32
      - name: locationId
        in: path
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/organisation_ValidationErrorDto'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organisation_UnauthorizedErrorResponseDto'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/organisation_ValidationErrorDto'
        '404':
          description: Domain not found or location not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organisation_ApiErrorResponseDto'
      x-audience: public
  /v2/organisation/groups/{groupId}/locations:
    get:
      tags:
      - Group Locations
      summary: List group locations
      operationId: getGroupLocations
      parameters:
      - name: groupId
        in: path
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/organisation_GroupLocationResponseDto'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organisation_UnauthorizedErrorResponseDto'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/organisation_ValidationErrorDto'
        '404':
          description: Domain not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organisation_ApiErrorResponseDto'
      x-audience: public
    post:
      tags:
      - Group Locations
      summary: Create group location
      operationId: addGroupLocation
      parameters:
      - name: groupId
        in: path
        required: true
        schema:
          type: integer
          format: int32
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/organisation_GroupLocationRequestDto'
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/organisation_GroupLocationResponseDto'
        '201':
          description: Created
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/organisation_GroupLocationResponseDto'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/organisation_ValidationErrorDto'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organisation_UnauthorizedErrorResponseDto'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/organisation_ValidationErrorDto'
        '404':
          description: Domain not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organisation_ApiErrorResponseDto'
      x-audience: public
components:
  schemas:
    organisation_UnauthorizedErrorResponseDto:
      type: object
      properties:
        timestamp:
          type: integer
          format: int64
          example: 1776706090492
        path:
          type: string
          example: /v2/organisation/groups/123
        status:
          type: integer
          format: int32
          example: 401
        error:
          type: string
          example: invalid_token
        requestId:
          type: string
          example: 32dbf81e-314892
        error_description:
          type: string
          example: Unauthorized exception
    organisation_ValidationErrorDto:
      type: object
      properties:
        field:
          type:
          - string
          - 'null'
          example: fieldName
        message:
          type: string
          example: error.organisation.forbidden
        severity:
          type: string
          example: ERROR
        additionalErrorParameters:
          type: object
          additionalProperties: {}
          example: {}
    organisation_GroupLocationRequestDto:
      type: object
      properties:
        latitude:
          type: string
          example: '59.329956'
          minLength: 1
          pattern: ^(\+|-)?(?:90(?:(?:\.0{1,6})?)|(?:[0-9]|[1-8][0-9])(?:(?:\.[0-9]{1,6})?))$
        longitude:
          type: string
          example: '18.062850'
          minLength: 1
          pattern: ^(\+|-)?(?:180(?:(?:\.0{1,6})?)|(?:[0-9]|[1-9][0-9]|1[0-7][0-9])(?:(?:\.[0-9]{1,6})?))$
        radius:
          type: integer
          format: int32
          example: 100
        comment:
          type: string
          example: Main entrance
      required:
      - latitude
      - longitude
      - radius
    organisation_ApiErrorResponseDto:
      type: object
      properties:
        timestamp:
          type: string
          example: '2026-04-20T18:11:08.182+00:00'
        status:
          type: integer
          format: int32
          example: 404
        error:
          type: string
          example: Not Found
        path:
          type: string
          example: /integration/groups/123
    organisation_GroupLocationResponseDto:
      type: object
      properties:
        id:
          type: integer
          format: int32
          example: 1
        groupId:
          type: integer
          format: int32
          example: 170305
        latitude:
          type: string
          example: '59.329956'
        longitude:
          type: string
          example: '18.062850'
        radius:
          type: integer
          format: int32
          example: 100
        comment:
          type: string
          example: Main entrance
  securitySchemes:
    employee_OAuth2ClientCredentials:
      type: oauth2
      description: OAuth2 Client Credentials flow. See https://developer.quinyx.com/api/authentication
      flows:
        clientCredentials:
          tokenUrl: /oauth/v3/token
          scopes:
            hr:employees:create: ''
            hr:employees:delete: ''
            hr:employees:read: ''
            hr:employees:update: ''
    opening-hours_OAuth2ClientCredentials:
      type: oauth2
      description: OAuth2 Client Credentials flow. See https://developer.quinyx.com/api/authentication
      flows:
        clientCredentials:
          tokenUrl: /oauth/v3/token
          scopes: {}
    organisation_OAuth2ClientCredentials:
      type: oauth2
      description: OAuth2 Client Credentials flow. See https://developer.quinyx.com/api/authentication
      flows:
        clientCredentials:
          tokenUrl: /oauth/v3/token
          scopes:
            organization:groups:create: ''
            organization:groups:delete: ''
            organization:groups:read: ''
            organization:groups:update: ''
    rest-api-uaa_OAuth2ClientCredentials:
      type: oauth2
      description: OAuth2 Client Credentials flow. See https://developer.quinyx.com/api/authentication
      flows:
        clientCredentials:
          tokenUrl: /oauth/v3/token
          scopes: {}
    schedule-availability_OAuth2ClientCredentials:
      type: oauth2
      description: OAuth2 Client Credentials flow. See https://developer.quinyx.com/api/authentication
      flows:
        clientCredentials:
          tokenUrl: /oauth/v3/token
          scopes: {}
    schedule_OAuth2ClientCredentials:
      type: oauth2
      description: OAuth2 Client Credentials flow. See https://developer.quinyx.com/api/authentication
      flows:
        clientCredentials:
          tokenUrl: /oauth/v3/token
          scopes: {}
    statistics_OAuth2ClientCredentials:
      type: oauth2
      description: OAuth2 Client Credentials flow. See https://developer.quinyx.com/api/authentication
      flows:
        clientCredentials:
          tokenUrl: /oauth/v3/token
          scopes: {}