openapi: 3.0.3 info: title: Grafana HTTP Access Move API description: The Grafana HTTP API provides programmatic access to Grafana's core functionality including dashboards, data sources, alerts, users, organizations, folders, annotations, and teams. Authentication is handled via API keys, basic auth, or OAuth tokens passed in the Authorization header. version: 11.0.0 contact: name: Grafana Labs url: https://grafana.com license: name: AGPL-3.0 url: https://www.gnu.org/licenses/agpl-3.0.html servers: - url: https://{instance}.grafana.net/api description: Grafana Cloud variables: instance: default: your-instance - url: http://localhost:3000/api description: Local Grafana instance security: - BearerAuth: [] - BasicAuth: [] - ApiKeyAuth: [] tags: - name: Move paths: /folders/{folder_uid}/move: parameters: [] post: tags: - Move summary: Grafana Move Folder description: This API operation moves a Grafana folder identified by its unique identifier (folder_uid) to a new location within the folder hierarchy. It uses a POST request to the /folders/{folder_uid}/move endpoint and allows administrators to reorganize their Grafana folder structure by changing a folder's parent or position. The operation requires the folder_uid path parameter to specify which folder to move, and typically accepts a request body containing the destination folder information or new parent folder identifier. This is useful for maintaining an organized dashboard structure as teams grow and reorganization becomes necessary. operationId: moveFolder parameters: - name: folder_uid in: path description: '' required: true schema: type: string requestBody: description: '' content: application/json: schema: $ref: '#/components/schemas/MoveFolderCommand' required: true responses: '200': description: (empty) headers: {} content: application/json: schema: $ref: '#/components/schemas/Folder' '401': description: UnauthorizedError is returned when the request is not authenticated. headers: {} content: application/json: schema: $ref: '#/components/schemas/ErrorResponseBody' '403': description: ForbiddenError is returned if the user/token has insufficient permissions to access the requested resource. headers: {} content: application/json: schema: $ref: '#/components/schemas/ErrorResponseBody' '404': description: NotFoundError is returned when the requested resource was not found. headers: {} content: application/json: schema: $ref: '#/components/schemas/ErrorResponseBody' '500': description: InternalServerError is a general error indicating something went wrong internally. headers: {} content: application/json: schema: $ref: '#/components/schemas/ErrorResponseBody' deprecated: false x-api-evangelist-processing: SplitPascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true components: schemas: ErrorResponseBody: title: ErrorResponseBody required: - message type: object properties: error: type: string description: Error An optional detailed description of the actual error. Only included if running in developer mode. message: type: string description: a human readable version of the error status: type: string description: 'Status An optional status to denote the cause of the error. For example, a 412 Precondition Failed error may include additional information of why that error happened.' MoveFolderCommand: title: MoveFolderCommand type: object properties: parentUid: type: string description: 'MoveFolderCommand captures the information required by the folder service to move a folder.' Folder: title: Folder type: object properties: accessControl: type: object additionalProperties: type: boolean description: 'Metadata contains user accesses for a given resource Ex: map[string]bool{"create":true, "delete": true}' canAdmin: type: boolean canDelete: type: boolean canEdit: type: boolean canSave: type: boolean created: type: string contentEncoding: date-time createdBy: type: string hasAcl: type: boolean id: type: integer description: 'Deprecated: use UID instead' contentEncoding: int64 managedBy: type: string description: 'It can be a user or a tool or a generic API client. +enum' orgId: type: integer contentEncoding: int64 parentUid: type: string description: only used if nested folders are enabled parents: type: array items: $ref: '#/components/schemas/Folder' description: the parent folders starting from the root going down title: type: string uid: type: string updated: type: string contentEncoding: date-time updatedBy: type: string url: type: string version: type: integer contentEncoding: int64 securitySchemes: BearerAuth: type: http scheme: bearer description: Service account token or API key BasicAuth: type: http scheme: basic ApiKeyAuth: type: apiKey in: header name: Authorization description: 'Format: Bearer '