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

# Batch Check Access

> Check access for a list of users and Synced Objects



## OpenAPI

````yaml post /api/permissions/{syncId}/batch-check
openapi: 3.0.0
info:
  title: Paragon Sync API
  description: API for managing Syncs and permissions for Connected Users
  version: 1.0.0
servers:
  - url: https://sync.useparagon.com
    description: Production server
security:
  - bearerAuth: []
paths:
  /api/permissions/{syncId}/batch-check:
    post:
      summary: Batch Check Access
      description: Check access for a list of users and Synced Objects
      parameters:
        - name: syncId
          in: path
          required: true
          schema:
            type: string
          description: >-
            UUID of the Sync to query, returned from the [Enable
            Sync](/managed-sync/api/enable-a-sync) endpoint.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchCheckRequest'
      responses:
        '200':
          description: Batch access check result
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchCheckResponse'
        '401':
          description: Unauthorized
components:
  schemas:
    BatchCheckRequest:
      type: object
      properties:
        checks:
          type: array
          description: A list of access checks to perform between users and Synced Objects.
          items:
            $ref: '#/components/schemas/BatchCheckItem'
      required:
        - checks
    BatchCheckResponse:
      type: object
      properties:
        result:
          type: array
          items:
            $ref: '#/components/schemas/BatchCheckResultItem'
      required:
        - result
    BatchCheckItem:
      type: object
      properties:
        object:
          type: string
          description: >-
            UUID of the Synced Object, returned from the [Pull Synced
            Records](/managed-sync/api/pull-synced-records) endpoint.
          example: a657df3b-17e2-5989-bc5f-13ddb7fdab41
        user:
          type: string
          description: >-
            The user identifier to check permissions for, prefixed with the type
            (*note that this prefix is specific to Batch Check*)
          example: user:email@example.com
        role:
          type: string
          description: The role to use for the access check.
          enum:
            - can_read
            - can_write
            - is_owner
      required:
        - object
        - role
        - user
    BatchCheckResultItem:
      type: object
      properties:
        allowed:
          type: boolean
          description: >-
            Returns `true` if the user has access to the Synced Object with the
            specified role.
        request:
          $ref: '#/components/schemas/BatchCheckItem'
          description: The original request item that was checked
        error:
          type: string
          description: Error message if the check failed
      required:
        - allowed
        - request
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Paragon User Token. Add to the Authorization header of your requests.

````