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

# Retrieves controllers

> Retrieves controllers. Required permission: assets:controller:list



## OpenAPI

````yaml /api/core-api/crmiapi.json get /api/v1/assets/controllers
openapi: 3.1.1
info:
  title: chargecloud - Core API
  summary: chargecloud Core API. All around CRM, Asset Management and more.
  version: 1.113.1
  description: chargecloud Core API. All around CRM, Asset Management and more.
servers:
  - url: https://api.chargecloud.dev
    description: Production - chargecloud Core API
  - url: https://demo.chargecloud.de
    description: Sandbox/Dev - chargecloud Core API
security: []
paths:
  /api/v1/assets/controllers:
    get:
      tags:
        - Controllers
      summary: Retrieves controllers
      description: 'Retrieves controllers. Required permission: assets:controller:list'
      operationId: /api/v1/assets/controllers_GET
      parameters:
        - name: location_id
          in: query
          description: ID of the location
          schema:
            type: integer
            format: int32
            description: ID of the location
        - name: limit
          in: query
          description: Maximum number of items per page. Maximum value is 25.
          schema:
            type: integer
            format: int64
            minimum: 1
            maximum: 25
            description: Maximum number of items per page. Maximum value is 25.
            example: '10'
        - name: page
          in: query
          description: Page number to retrieve (starting from 1).
          schema:
            type: integer
            format: int64
            minimum: 1
            description: Page number to retrieve (starting from 1).
            example: '1'
      responses:
        '200':
          description: Controller collection
          headers:
            Content-Language:
              $ref: '#/components/headers/Content-Language'
          content:
            application/json:
              schema:
                type: object
                required:
                  - controllers
                properties:
                  controllers:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: integer
                          format: int32
                          description: Controller id
                        uuid:
                          type: string
                          maxLength: 36
                          description: Controller UUID
                        created_at:
                          type: string
                          format: date
                          pattern: ^\d{4}-\d{2}-\d{2}$
                          description: Controller creation date
                        updated_at:
                          type: string
                          format: date
                          pattern: ^\d{4}-\d{2}-\d{2}$
                          description: Controller update date
                        status:
                          type: string
                          enum:
                            - Available
                            - Occupied
                            - Unavailable
                            - Faulted
                            - Deactivated
                            - unknown
                            - undefined
                          description: Status of the controller
                        modification_date:
                          type: string
                          format: date
                          pattern: ^\d{4}-\d{2}-\d{2}$
                          description: The modification date of the controller
                        firmware_version:
                          type: string
                          maxLength: 50
                          description: Firmware version of the controller
                        location_id:
                          type: integer
                          format: int32
                          minimum: 0
                          description: Controller location id
                        logging:
                          type: boolean
                          default: true
                          description: Is logging eanbled for this controller
                        fairmode:
                          type: boolean
                          default: false
                          description: Is fairmode enabled for this controller
                        software:
                          type: string
                          enum:
                            - mennekes
                            - mennekes_ecu
                            - mennekes_amtron_non_eichrecht
                            - mennekes_amedio_eichrecht
                            - mennekes_amedio_non_eichrecht
                            - mennekes_4you_500
                            - mennekes_4business_700
                            - mennekes_4business_700_eichrecht
                            - nidec
                            - ebg
                            - phoenix
                            - ecotap
                            - abb
                            - abb_terra_ac
                            - alfen
                            - amperfied
                            - ampure
                            - hubject
                            - kathrein
                            - keba
                            - kostad_sissy2
                            - heliox
                            - innogy
                            - ochp
                            - ebee
                            - enercharge
                            - chargeamps
                            - schneiderelectric
                            - tritium
                            - walther
                            - vinci_proxy
                            - vestel
                            - volkswagen
                            - chargehere
                            - schrack
                            - ebemobility
                            - kostad
                            - circontrol
                            - eluminocity
                            - abl
                            - abl_em4
                            - bauer_gen3
                            - bauer_gen4
                            - gewiss
                            - getpower
                            - delta
                            - photon
                            - porsche
                            - powerjames
                            - ads_tec
                            - siemens
                            - siemens_sicharge_d
                            - smight
                            - aixacct
                            - alpitronic
                            - stoehr
                            - meenergy
                            - whbcharging
                            - starchargeaurora
                            - compleo_solo
                            - evboxdc
                            - evboxliviqo
                            - unknown
                            - smappee
                            - hager_witty_share
                            - hager_witty_park
                            - hager_witty_pro
                            - zaptec
                            - peblar
                            - rzb
                            - kempower
                            - spelsberg
                          description: Software of the controller
                        charge_point_model:
                          type: string
                          maxLength: 20
                          description: Charge point model of the controller
                        name:
                          type: string
                          maxLength: 50
                          description: Name of the controller
                        ssl:
                          type: boolean
                          default: false
                          description: >-
                            Does the controller support ssl. Required unless
                            backend communication type is OCPP 1.6 JSON.
                        ip_address:
                          type: string
                          description: >-
                            IP address of the controller. Will be automatically
                            set from sim card if ICC-ID is set.
                        dns_name:
                          type: string
                          description: DNS Name of the controller
                        ip_port:
                          type: integer
                          format: int64
                          description: The IP Port of the controller
                        proxy_port:
                          type: integer
                          format: int64
                          description: The proxy port of the controller
                        manufacturer:
                          type: string
                          description: The manufacturer of the controller
                        backend_communication_type:
                          type: string
                          enum:
                            - ocpp_1_5
                            - ocpp_1_6_soap
                            - ocpp_1_6_json
                            - ocpp_1_6_json_v2
                            - ocpp_201_json
                          description: The backend communication type of the controller
                        mobile_communication_type:
                          type: string
                          enum:
                            - DSL
                            - GSM
                            - WLAN
                          description: The mobile communication type of the controller
                        mobile_number:
                          type: string
                          maxLength: 25
                          description: The mobile number of the controller
                        icc_id:
                          type: string
                          maxLength: 25
                          description: The ICC ID of the controller
                        imsi:
                          type: string
                          maxLength: 30
                          description: The IMSI of the controller
                        imei:
                          type: string
                          maxLength: 30
                          description: The IMEI of the controller
                        sim_card_name:
                          type: string
                          maxLength: 50
                          description: The SIM card name of the controller
                        radius_pwd:
                          type: string
                          maxLength: 50
                          description: The radius password of the controller
                        pin:
                          type: string
                          maxLength: 5
                          description: The PIN of the controller
                        puk:
                          type: string
                          maxLength: 8
                          description: The PUK of the controller
                        alternative_heartbeat_interval:
                          type: integer
                          format: int64
                          minimum: 60
                          maximum: 7200
                          description: The alternative heartbeat interval of the controller
                        alternative_meter_values_interval:
                          type: integer
                          format: int64
                          minimum: 60
                          maximum: 7200
                          description: >-
                            The alternative meter values interval of the
                            controller
                        alternative_ftp_host:
                          type: string
                          maxLength: 55
                          description: The alternative FTP host of the controller
                        serial_number:
                          type: string
                          maxLength: 16
                          description: The serial number of the controller
                        article_number:
                          type: string
                          maxLength: 16
                          description: The article number of the controller
                        u_ids:
                          type: array
                          items:
                            type: object
                            properties:
                              u_id:
                                type: string
                                pattern: ^[^,]*$
                                description: Authentication uId
                            required:
                              - u_id
                          description: The controllers uIds
                      required:
                        - id
                        - uuid
                        - created_at
                        - updated_at
                        - status
                        - location_id
                        - logging
                        - fairmode
                        - software
                        - name
                        - backend_communication_type
                        - mobile_communication_type
                      description: Controller
                    description: Controllers
                  pagination:
                    type: object
                    properties:
                      page:
                        type: integer
                        format: int64
                        description: Current page number (starting from 1).
                        example: '1'
                      total_pages:
                        type: integer
                        format: int64
                        description: Total number of available pages.
                        example: '5'
                      page_size:
                        type: integer
                        format: int64
                        description: Number of items returned per page.
                        example: '10'
                      has_more:
                        type: boolean
                        default: true
                        description: >-
                          Indicates whether more pages are available after the
                          current page.
                        example: 'true'
                    description: Pagination
        '401':
          description: Unauthorized
          headers:
            Content-Language:
              $ref: '#/components/headers/Content-Language'
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: string
                    description: Error message
        '404':
          description: Not found
          headers:
            Content-Language:
              $ref: '#/components/headers/Content-Language'
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: string
                    description: Error message
                  pagination:
                    type: object
                    properties:
                      page:
                        type: integer
                        format: int64
                        description: Current page number (starting from 1).
                        example: '1'
                      total_pages:
                        type: integer
                        format: int64
                        description: Total number of available pages.
                        example: '5'
                      page_size:
                        type: integer
                        format: int64
                        description: Number of items returned per page.
                        example: '10'
                      has_more:
                        type: boolean
                        default: true
                        description: >-
                          Indicates whether more pages are available after the
                          current page.
                        example: 'true'
                    description: Pagination
        '405':
          description: Method not allowed
          headers:
            Content-Language:
              $ref: '#/components/headers/Content-Language'
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: string
                    description: Error message
        '422':
          description: Request validation failed
          headers:
            Content-Language:
              $ref: '#/components/headers/Content-Language'
          content:
            application/json:
              schema:
                type: object
                required:
                  - errors
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        errorKey:
                          type: string
                          description: A key identifying the error
                        message:
                          type: string
                          description: The error message
                        parameter:
                          type: string
                          description: The parameter that caused the error, if any
                      required:
                        - errorKey
                        - message
                        - parameter
                      description: Error
                    description: List of errors
        '429':
          description: Too many requests
          headers:
            Content-Language:
              $ref: '#/components/headers/Content-Language'
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: string
                    description: Error message
      security:
        - bearer:
            - asset:controller
components:
  headers:
    Content-Language:
      description: The locale of the response content (BCP 47 language tag).
      schema:
        type: string
        example: en
  securitySchemes:
    bearer:
      type: http
      description: OAuth2 Bearer Authorization
      scheme: bearer
      bearerFormat: JWT

````

## Related topics

- [Retrieves details of a controller](/api-reference/controllers/retrieves-details-of-a-controller.md)
- [Retrieves chargepoints](/api-reference/chargepoints/retrieves-chargepoints.md)
- [Retrieves locations](/api-reference/locations/retrieves-locations.md)
