{
    "id": "OwlAccessBeta",
    "operations": {
        "owl-access.beta.accounts.addClaimsToAccessToken": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.accounts.addClaimsToAccessToken",
            "type": "action",
            "name": "addClaimsToAccessToken",
            "title": "Generate an access token with additional claims",
            "description": "Generate an access token based on a past access token (same payload) but with additional claims. The new claims will be added to the list of current claims (ex: current per: ['owl.manager'], new claims ['owl.manager', 'owl.workspaces.abcdef']). This operation is called only from the portal with a valid access token.",
            "http": {
                "method": "POST",
                "path": "/addClaimsToAccessToken"
            },
            "access": {
                "rights": ["admin"]
            },
            "input": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {},
                    "required": true,
                    "requiredProperties": [],
                    "default": false,
                    "scope": "data",
                    "additionalProperties": false,
                    "type": "object",
                    "properties": {
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "items": {
                                "type": "string"
                            }
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "items": {
                                "type": "string"
                            }
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "items": {
                                "type": "string"
                            }
                        }
                    },
                    "in": "body",
                    "schema": {
                        "type": "object",
                        "properties": {
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "items": {
                                    "type": "string"
                                }
                            }
                        },
                        "required": []
                    }
                },
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"
                    },
                    "required": true,
                    "requiredProperties": ["accessToken"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "Access data.",
                    "properties": {
                        "accessToken": {
                            "type": "string",
                            "description": "Access token (JWT format)."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "Access data.",
                        "type": "object",
                        "properties": {
                            "accessToken": {
                                "type": "string",
                                "description": "Access token (JWT format)."
                            }
                        },
                        "required": ["accessToken"]
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.accounts",
            "inputId": "OwlAccessBetaAccountsAddClaimsToAccessTokenInput",
            "outputId": "OwlAccessBetaAccountsAddClaimsToAccessTokenOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "authorization": [
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "addClaimsToAccessToken"
        },
        "owl-access.beta.accounts.users.checkExistence": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.accounts.users.checkExistence",
            "type": "checkExistence",
            "name": "checkUserAccountExistence",
            "title": "Check user existence",
            "description": "Check if a user exists.",
            "http": {
                "method": "GET",
                "path": "/users/:userId/checkExistence"
            },
            "access": {
                "rights": ["admin"]
            },
            "input": [
                {
                    "id": "userId",
                    "name": "userId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "User id.",
                    "in": "path",
                    "schema": {
                        "description": "User id.",
                        "type": "string"
                    }
                },
                {
                    "id": "workspaceId",
                    "name": "workspaceId",
                    "scope": "path",
                    "example": "56b888f8-4381-49f5-8c5e-e09e188ef20d",
                    "required": true,
                    "description": "Workspace identifier.",
                    "type": "string",
                    "in": "path",
                    "schema": {
                        "description": "Workspace identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "environmentId",
                    "name": "environmentId",
                    "scope": "path",
                    "example": "56b888f8-4381-49f5-8c5e-e09e188ef20d",
                    "required": false,
                    "description": "Environment id. If not specified, the default environment will be used.",
                    "type": "string",
                    "in": "path",
                    "schema": {
                        "description": "Environment id. If not specified, the default environment will be used.",
                        "type": "string"
                    }
                },
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "exists",
                    "name": "exists",
                    "example": "true",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "boolean",
                    "description": "Resource existence.",
                    "in": "query",
                    "schema": {
                        "description": "Resource existence.",
                        "type": "boolean"
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.accounts.users",
            "inputId": "OwlAccessBetaAccountsUsersCheckExistenceInput",
            "outputId": "OwlAccessBetaAccountsUsersCheckExistenceOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "authorization": [
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "checkUserAccountExistence"
        },
        "owl-access.beta.accounts.machines.create": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.accounts.machines.create",
            "type": "create",
            "name": "createMachineAccount",
            "title": "Create a machine account",
            "description": "Create a new machine account (used for machine to machine interaction).",
            "http": {
                "method": "POST",
                "path": "/machineAccounts"
            },
            "access": {
                "rights": ["admin"]
            },
            "input": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "name": "Service Account Alpha"
                    },
                    "required": true,
                    "requiredProperties": ["name"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "Machine account object data.",
                    "properties": {
                        "name": {
                            "type": "string",
                            "description": "Machine account display name (can be modify later)."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "Machine account object data.",
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": "string",
                                "description": "Machine account display name (can be modify later)."
                            }
                        },
                        "required": ["name"]
                    }
                },
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "id",
                    "name": "id",
                    "example": "true",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Created resource id.",
                    "in": "query",
                    "schema": {
                        "description": "Created resource id.",
                        "type": "string"
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.accounts.machines",
            "inputId": "OwlAccessBetaAccountsMachinesCreateInput",
            "outputId": "OwlAccessBetaAccountsMachinesCreateOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "authorization": [
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "createMachineAccount"
        },
        "owl-access.beta.accounts.users.create": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.accounts.users.create",
            "type": "create",
            "name": "createUserAccount",
            "title": "Create a user",
            "description": "Create a new user.",
            "http": {
                "method": "POST",
                "path": "/users"
            },
            "access": {
                "rights": ["admin"]
            },
            "input": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "firstName": "John",
                        "lastName": "Doe",
                        "email": "john.doe@acme.org"
                    },
                    "required": true,
                    "requiredProperties": ["firstName", "lastName", "email"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "User object data.",
                    "properties": {
                        "firstName": {
                            "type": "string",
                            "description": "User first name."
                        },
                        "lastName": {
                            "type": "string",
                            "description": "User last name."
                        },
                        "email": {
                            "type": "string",
                            "description": "User email.",
                            "format": "email"
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "User object data.",
                        "type": "object",
                        "properties": {
                            "firstName": {
                                "type": "string",
                                "description": "User first name."
                            },
                            "lastName": {
                                "type": "string",
                                "description": "User last name."
                            },
                            "email": {
                                "type": "string",
                                "description": "User email.",
                                "format": "email"
                            }
                        },
                        "required": ["firstName", "lastName", "email"]
                    }
                },
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "id",
                    "name": "id",
                    "example": "true",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Created resource id.",
                    "in": "query",
                    "schema": {
                        "description": "Created resource id.",
                        "type": "string"
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.accounts.users",
            "inputId": "OwlAccessBetaAccountsUsersCreateInput",
            "outputId": "OwlAccessBetaAccountsUsersCreateOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "authorization": [
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "createUserAccount"
        },
        "owl-access.beta.accounts.machines.delete": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.accounts.machines.delete",
            "type": "delete",
            "name": "deleteMachineAccount",
            "title": "Delete a machine account",
            "description": "Delete a machine account.",
            "http": {
                "method": "DELETE",
                "path": "/machineAccounts/:machineAccountId"
            },
            "access": {
                "rights": ["admin"]
            },
            "input": [
                {
                    "id": "machineAccountId",
                    "name": "machineAccountId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "Machine account id.",
                    "in": "path",
                    "schema": {
                        "description": "Machine account id.",
                        "type": "string"
                    }
                },
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "id",
                    "name": "id",
                    "example": "true",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Deleted resource id.",
                    "in": "query",
                    "schema": {
                        "description": "Deleted resource id.",
                        "type": "string"
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.accounts.machines",
            "inputId": "OwlAccessBetaAccountsMachinesDeleteInput",
            "outputId": "OwlAccessBetaAccountsMachinesDeleteOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "authorization": [
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "deleteMachineAccount"
        },
        "owl-access.beta.accounts.users.delete": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.accounts.users.delete",
            "type": "delete",
            "name": "deleteUserAccount",
            "title": "Delete a user",
            "description": "Delete a user.",
            "http": {
                "method": "DELETE",
                "path": "/users/:userId"
            },
            "access": {
                "rights": ["admin"]
            },
            "input": [
                {
                    "id": "userId",
                    "name": "userId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "User id.",
                    "in": "path",
                    "schema": {
                        "description": "User id.",
                        "type": "string"
                    }
                },
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "id",
                    "name": "id",
                    "example": "true",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Deleted resource id.",
                    "in": "query",
                    "schema": {
                        "description": "Deleted resource id.",
                        "type": "string"
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.accounts.users",
            "inputId": "OwlAccessBetaAccountsUsersDeleteInput",
            "outputId": "OwlAccessBetaAccountsUsersDeleteOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "authorization": [
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "deleteUserAccount"
        },
        "owl-access.beta.generateAccessToken": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.generateAccessToken",
            "type": "action",
            "name": "generateAccessToken",
            "title": "Generate an access token",
            "description": "Generate an access token. This operation is only callable from low services and requires a secret to be passed in input body.",
            "http": {
                "method": "POST",
                "path": "/generateAccessToken"
            },
            "access": {
                "rights": []
            },
            "input": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {},
                    "required": true,
                    "requiredProperties": ["sub"],
                    "default": false,
                    "additionalProperties": false,
                    "scope": "data",
                    "type": "object",
                    "properties": {
                        "sub": {
                            "type": "string",
                            "description": "Account id of the token subscriber."
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "items": {
                                "type": "string"
                            }
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "items": {
                                "type": "string"
                            }
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "items": {
                                "type": "string"
                            }
                        }
                    },
                    "in": "body",
                    "schema": {
                        "type": "object",
                        "properties": {
                            "sub": {
                                "type": "string",
                                "description": "Account id of the token subscriber."
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "items": {
                                    "type": "string"
                                }
                            }
                        },
                        "required": ["sub"]
                    }
                },
                {
                    "id": "secret",
                    "name": "secret",
                    "scope": "technical",
                    "example": "helloworld",
                    "required": true,
                    "description": "Secret.",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Secret.",
                        "type": "string"
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"
                    },
                    "required": true,
                    "requiredProperties": ["accessToken", "accountId"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "Access data.",
                    "properties": {
                        "accessToken": {
                            "type": "string",
                            "description": "Access token (JWT format)."
                        },
                        "accountId": {
                            "type": "string",
                            "description": "Account ID."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "Access data.",
                        "type": "object",
                        "properties": {
                            "accessToken": {
                                "type": "string",
                                "description": "Access token (JWT format)."
                            },
                            "accountId": {
                                "type": "string",
                                "description": "Account ID."
                            }
                        },
                        "required": ["accessToken", "accountId"]
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta",
            "inputId": "OwlAccessBetaGenerateAccessTokenInput",
            "outputId": "OwlAccessBetaGenerateAccessTokenOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "generateAccessToken"
        },
        "owl-access.beta.accounts.users.getGithubAccountId": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.accounts.users.getGithubAccountId",
            "type": "action",
            "name": "getGithubAccountId",
            "title": "Get a Github Account Id",
            "description": "Get a Github Account Id from a Github OAuth code. This request requests first the user account id and update it in the database.",
            "http": {
                "method": "POST",
                "path": "/getGithubAccountId"
            },
            "access": {
                "rights": []
            },
            "input": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "code": "1234567890abcdef",
                        "userId": "1234567890abcdef"
                    },
                    "required": true,
                    "requiredProperties": ["code", "userId"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "properties": {
                        "code": {
                            "type": "string",
                            "description": "Github OAuth code."
                        },
                        "userId": {
                            "type": "string",
                            "description": "OwlGrid user id."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "type": "object",
                        "properties": {
                            "code": {
                                "type": "string",
                                "description": "Github OAuth code."
                            },
                            "userId": {
                                "type": "string",
                                "description": "OwlGrid user id."
                            }
                        },
                        "required": ["code", "userId"]
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "message",
                    "name": "message",
                    "example": "success",
                    "required": true,
                    "scope": "data",
                    "type": "string",
                    "description": "Success message.",
                    "in": "body",
                    "schema": {
                        "description": "Success message.",
                        "type": "string"
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.accounts.users",
            "inputId": "OwlAccessBetaAccountsUsersGetGithubAccountIdInput",
            "outputId": "OwlAccessBetaAccountsUsersGetGithubAccountIdOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "getGithubAccountId"
        },
        "owl-access.beta.accounts.users.getGithubAuthorizationToken": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.accounts.users.getGithubAuthorizationToken",
            "type": "action",
            "name": "getGithubAuthorizationToken",
            "title": "Get Github authorization token",
            "description": "Get a Github authorization from a Github OAuth code. This method does not stores the token in the database.",
            "http": {
                "method": "POST",
                "path": "/getGithubAuthorizationToken"
            },
            "access": {
                "rights": []
            },
            "input": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "code": "1234567890abcdef"
                    },
                    "required": true,
                    "requiredProperties": ["code"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "properties": {
                        "code": {
                            "type": "string",
                            "description": "Github OAuth code."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "type": "object",
                        "properties": {
                            "code": {
                                "type": "string",
                                "description": "Github OAuth code."
                            }
                        },
                        "required": ["code"]
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "message",
                    "name": "message",
                    "example": "success",
                    "required": true,
                    "scope": "data",
                    "type": "string",
                    "description": "Success message.",
                    "in": "body",
                    "schema": {
                        "description": "Success message.",
                        "type": "string"
                    }
                },
                {
                    "id": "data",
                    "name": "data",
                    "type": "object",
                    "scope": "data",
                    "description": "Github authorization token.",
                    "required": true,
                    "properties": {
                        "authorizationToken": {
                            "type": "string",
                            "description": "Authorization token."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "Github authorization token.",
                        "type": "object",
                        "properties": {
                            "authorizationToken": {
                                "type": "string",
                                "description": "Authorization token."
                            }
                        }
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.accounts.users",
            "inputId": "OwlAccessBetaAccountsUsersGetGithubAuthorizationTokenInput",
            "outputId": "OwlAccessBetaAccountsUsersGetGithubAuthorizationTokenOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "getGithubAuthorizationToken"
        },
        "owl-access.beta.accounts.users.get": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.accounts.users.get",
            "type": "get",
            "name": "getUserAccount",
            "title": "Get user",
            "description": "Get a user account.",
            "http": {
                "method": "GET",
                "path": "/users/:userId"
            },
            "access": {
                "rights": ["users.get"]
            },
            "input": [
                {
                    "id": "userId",
                    "name": "userId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "User id.",
                    "in": "path",
                    "schema": {
                        "description": "User id.",
                        "type": "string"
                    }
                },
                {
                    "id": "properties",
                    "name": "properties",
                    "scope": "metadata",
                    "example": "name,location",
                    "required": false,
                    "description": "Properties returned in the object (separated by a comma). If empty, all properties are returned.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "in": "query",
                    "schema": {
                        "description": "Properties returned in the object (separated by a comma). If empty, all properties are returned.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "properties",
                    "name": "properties",
                    "example": "id,name",
                    "required": false,
                    "default": "",
                    "scope": "metadata",
                    "type": "string",
                    "description": "Properties returned in the object response.",
                    "in": "query",
                    "schema": {
                        "description": "Properties returned in the object response.",
                        "type": "string"
                    }
                },
                {
                    "id": "data",
                    "name": "data",
                    "type": "object",
                    "scope": "data",
                    "description": "List of users",
                    "required": true,
                    "properties": {
                        "id": {
                            "type": "string",
                            "description": "User id."
                        },
                        "email": {
                            "type": "string",
                            "description": "User email."
                        },
                        "fullName": {
                            "type": "string",
                            "description": "User full name."
                        },
                        "githubAccountId": {
                            "type": ["string", "null"],
                            "description": "User github account id."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "List of users",
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string",
                                "description": "User id."
                            },
                            "email": {
                                "type": "string",
                                "description": "User email."
                            },
                            "fullName": {
                                "type": "string",
                                "description": "User full name."
                            },
                            "githubAccountId": {
                                "type": ["string", "null"],
                                "description": "User github account id."
                            }
                        }
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.accounts.users",
            "inputId": "OwlAccessBetaAccountsUsersGetInput",
            "outputId": "OwlAccessBetaAccountsUsersGetOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "authorization": [
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "getUserAccount"
        },
        "owl-access.beta.accounts.users.githubAuthorizedRepositories.list": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.accounts.users.githubAuthorizedRepositories.list",
            "type": "list",
            "name": "listGithubAuthorizedRepositories",
            "title": "List Github authorized repositories",
            "description": "List repositories that have been authorized by a user.",
            "http": {
                "method": "GET",
                "path": "/users/:userId/githubAuthorizedRepositories"
            },
            "access": {
                "rights": []
            },
            "input": [
                {
                    "id": "pageSize",
                    "scope": "metadata",
                    "name": "pageSize",
                    "title": "Page size",
                    "description": "Maximum number of items to return.",
                    "example": 10,
                    "required": false,
                    "default": 100,
                    "type": "integer",
                    "maximum": 1000,
                    "controller": {
                        "required": true,
                        "type": "integer"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Maximum number of items to return.",
                        "type": "integer",
                        "default": 100,
                        "maximum": 1000
                    }
                },
                {
                    "id": "pageToken",
                    "name": "pageToken",
                    "scope": "metadata",
                    "example": "token",
                    "required": false,
                    "description": "Token to specify the next page in the list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 100,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Token to specify the next page in the list.",
                        "type": "string",
                        "maxLength": 100
                    }
                },
                {
                    "id": "orderBy",
                    "name": "orderBy",
                    "scope": "metadata",
                    "example": "createDate desc",
                    "required": false,
                    "description": "Order results list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Order results list.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "filter",
                    "name": "filter",
                    "scope": "metadata",
                    "example": "name includes 'hello'",
                    "required": false,
                    "description": "Filter results list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Filter results list.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "search",
                    "name": "search",
                    "scope": "metadata",
                    "example": "hello",
                    "required": false,
                    "description": "Text search on indexed fields.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Text search on indexed fields.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "properties",
                    "name": "properties",
                    "scope": "metadata",
                    "example": "name,location",
                    "required": false,
                    "description": "Properties returned in the object (separated by a comma). If empty, all properties are returned.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "in": "query",
                    "schema": {
                        "description": "Properties returned in the object (separated by a comma). If empty, all properties are returned.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "githubAuthorizationToken",
                    "name": "githubAuthorizationToken",
                    "example": "ghu_n6...",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Github OAuth authorization token.",
                    "in": "query",
                    "schema": {
                        "description": "Github OAuth authorization token.",
                        "type": "string"
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "totalSize",
                    "name": "totalSize",
                    "example": 10,
                    "required": false,
                    "default": 0,
                    "scope": "metadata",
                    "type": "integer",
                    "description": "Number of returned results.",
                    "in": "query",
                    "schema": {
                        "description": "Number of returned results.",
                        "type": "integer"
                    }
                },
                {
                    "id": "nextPageToken",
                    "name": "nextPageToken",
                    "example": "xxx",
                    "required": false,
                    "default": 0,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Token to retrieve the next page of results.",
                    "in": "query",
                    "schema": {
                        "description": "Token to retrieve the next page of results.",
                        "type": "string"
                    }
                },
                {
                    "id": "data",
                    "name": "data",
                    "type": "array",
                    "scope": "data",
                    "description": "List of repositories",
                    "required": true,
                    "items": {
                        "type": "object",
                        "properties": {
                            "repositoryId": {
                                "type": "string",
                                "description": "Repository id."
                            },
                            "repositoryName": {
                                "type": "string",
                                "description": "Repository name."
                            },
                            "repositoryOwner": {
                                "type": "string",
                                "description": "Repository owner."
                            }
                        },
                        "required": ["repositoryId", "repositoryName", "repositoryOwner"]
                    },
                    "in": "body",
                    "schema": {
                        "description": "List of repositories",
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "repositoryId": {
                                    "type": "string",
                                    "description": "Repository id."
                                },
                                "repositoryName": {
                                    "type": "string",
                                    "description": "Repository name."
                                },
                                "repositoryOwner": {
                                    "type": "string",
                                    "description": "Repository owner."
                                }
                            },
                            "required": ["repositoryId", "repositoryName", "repositoryOwner"]
                        }
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.accounts.users.githubAuthorizedRepositories",
            "inputId": "OwlAccessBetaAccountsUsersGithubAuthorizedRepositoriesListInput",
            "outputId": "OwlAccessBetaAccountsUsersGithubAuthorizedRepositoriesListOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "listGithubAuthorizedRepositories"
        },
        "owl-access.beta.githubRepositoryBranches.list": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.githubRepositoryBranches.list",
            "type": "list",
            "name": "listGithubRepositoryBranches",
            "title": "List Github repository branches",
            "description": "List branches of a repository.",
            "http": {
                "method": "GET",
                "path": "/listGithubRepositoryBranches"
            },
            "access": {
                "rights": []
            },
            "input": [
                {
                    "id": "pageSize",
                    "scope": "metadata",
                    "name": "pageSize",
                    "title": "Page size",
                    "description": "Maximum number of items to return.",
                    "example": 10,
                    "required": false,
                    "default": 100,
                    "type": "integer",
                    "maximum": 1000,
                    "controller": {
                        "required": true,
                        "type": "integer"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Maximum number of items to return.",
                        "type": "integer",
                        "default": 100,
                        "maximum": 1000
                    }
                },
                {
                    "id": "pageToken",
                    "name": "pageToken",
                    "scope": "metadata",
                    "example": "token",
                    "required": false,
                    "description": "Token to specify the next page in the list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 100,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Token to specify the next page in the list.",
                        "type": "string",
                        "maxLength": 100
                    }
                },
                {
                    "id": "orderBy",
                    "name": "orderBy",
                    "scope": "metadata",
                    "example": "createDate desc",
                    "required": false,
                    "description": "Order results list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Order results list.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "filter",
                    "name": "filter",
                    "scope": "metadata",
                    "example": "name includes 'hello'",
                    "required": false,
                    "description": "Filter results list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Filter results list.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "search",
                    "name": "search",
                    "scope": "metadata",
                    "example": "hello",
                    "required": false,
                    "description": "Text search on indexed fields.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Text search on indexed fields.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "properties",
                    "name": "properties",
                    "scope": "metadata",
                    "example": "name,location",
                    "required": false,
                    "description": "Properties returned in the object (separated by a comma). If empty, all properties are returned.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "in": "query",
                    "schema": {
                        "description": "Properties returned in the object (separated by a comma). If empty, all properties are returned.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "githubAuthorizationToken",
                    "name": "githubAuthorizationToken",
                    "example": "ghu_n6...",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Github OAuth authorization token.",
                    "in": "query",
                    "schema": {
                        "description": "Github OAuth authorization token.",
                        "type": "string"
                    }
                },
                {
                    "id": "repositoryId",
                    "name": "repositoryId",
                    "example": "12345678",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Github repository id.",
                    "in": "query",
                    "schema": {
                        "description": "Github repository id.",
                        "type": "string"
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "totalSize",
                    "name": "totalSize",
                    "example": 10,
                    "required": false,
                    "default": 0,
                    "scope": "metadata",
                    "type": "integer",
                    "description": "Number of returned results.",
                    "in": "query",
                    "schema": {
                        "description": "Number of returned results.",
                        "type": "integer"
                    }
                },
                {
                    "id": "nextPageToken",
                    "name": "nextPageToken",
                    "example": "xxx",
                    "required": false,
                    "default": 0,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Token to retrieve the next page of results.",
                    "in": "query",
                    "schema": {
                        "description": "Token to retrieve the next page of results.",
                        "type": "string"
                    }
                },
                {
                    "id": "data",
                    "name": "data",
                    "type": "array",
                    "scope": "data",
                    "description": "List of branches",
                    "required": true,
                    "items": {
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": "string",
                                "description": "Branch name."
                            }
                        },
                        "required": ["name"]
                    },
                    "in": "body",
                    "schema": {
                        "description": "List of branches",
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "name": {
                                    "type": "string",
                                    "description": "Branch name."
                                }
                            },
                            "required": ["name"]
                        }
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.githubRepositoryBranches",
            "inputId": "OwlAccessBetaGithubRepositoryBranchesListInput",
            "outputId": "OwlAccessBetaGithubRepositoryBranchesListOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "listGithubRepositoryBranches"
        },
        "owl-access.beta.accounts.users.githubUserInformation.list": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.accounts.users.githubUserInformation.list",
            "type": "get",
            "name": "getGithubUserInformation",
            "title": "Get Github user information",
            "description": "Get the user information of a Github user.",
            "http": {
                "method": "GET",
                "path": "/users/:userId/githubUserInformation"
            },
            "access": {
                "rights": []
            },
            "input": [
                {
                    "id": "properties",
                    "name": "properties",
                    "scope": "metadata",
                    "example": "name,location",
                    "required": false,
                    "description": "Properties returned in the object (separated by a comma). If empty, all properties are returned.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "in": "query",
                    "schema": {
                        "description": "Properties returned in the object (separated by a comma). If empty, all properties are returned.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "githubAuthorizationToken",
                    "name": "githubAuthorizationToken",
                    "example": "ghu_n6...",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Github OAuth authorization token.",
                    "in": "query",
                    "schema": {
                        "description": "Github OAuth authorization token.",
                        "type": "string"
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "properties",
                    "name": "properties",
                    "example": "id,name",
                    "required": false,
                    "default": "",
                    "scope": "metadata",
                    "type": "string",
                    "description": "Properties returned in the object response.",
                    "in": "query",
                    "schema": {
                        "description": "Properties returned in the object response.",
                        "type": "string"
                    }
                },
                {
                    "id": "data",
                    "name": "data",
                    "type": "object",
                    "scope": "data",
                    "description": "Github user data",
                    "required": true,
                    "requiredProperties": ["name", "id", "avatar"],
                    "properties": {
                        "name": {
                            "type": "string",
                            "description": "Github user name."
                        },
                        "id": {
                            "type": "string",
                            "description": "Github user id."
                        },
                        "avatar": {
                            "type": "string",
                            "description": "Github user avatar url."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "Github user data",
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": "string",
                                "description": "Github user name."
                            },
                            "id": {
                                "type": "string",
                                "description": "Github user id."
                            },
                            "avatar": {
                                "type": "string",
                                "description": "Github user avatar url."
                            }
                        },
                        "required": ["name", "id", "avatar"]
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.accounts.users.githubUserInformation",
            "inputId": "OwlAccessBetaAccountsUsersGithubUserInformationListInput",
            "outputId": "OwlAccessBetaAccountsUsersGithubUserInformationListOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "getGithubUserInformation"
        },
        "owl-access.beta.accounts.machines.list": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.accounts.machines.list",
            "type": "list",
            "name": "listMachineAccounts",
            "title": "List machine accounts",
            "description": "List machine accounts in OwlGrid manager.",
            "http": {
                "method": "GET",
                "path": "/machineAccounts"
            },
            "access": {
                "rights": ["accounts.machines.list"]
            },
            "input": [
                {
                    "id": "pageSize",
                    "scope": "metadata",
                    "name": "pageSize",
                    "title": "Page size",
                    "description": "Maximum number of items to return.",
                    "example": 10,
                    "required": false,
                    "default": 100,
                    "type": "integer",
                    "maximum": 1000,
                    "controller": {
                        "required": true,
                        "type": "integer"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Maximum number of items to return.",
                        "type": "integer",
                        "default": 100,
                        "maximum": 1000
                    }
                },
                {
                    "id": "pageToken",
                    "name": "pageToken",
                    "scope": "metadata",
                    "example": "token",
                    "required": false,
                    "description": "Token to specify the next page in the list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 100,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Token to specify the next page in the list.",
                        "type": "string",
                        "maxLength": 100
                    }
                },
                {
                    "id": "orderBy",
                    "name": "orderBy",
                    "scope": "metadata",
                    "example": "createDate desc",
                    "required": false,
                    "description": "Order results list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Order results list.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "filter",
                    "name": "filter",
                    "scope": "metadata",
                    "example": "name includes 'hello'",
                    "required": false,
                    "description": "Filter results list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Filter results list.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "search",
                    "name": "search",
                    "scope": "metadata",
                    "example": "hello",
                    "required": false,
                    "description": "Text search on indexed fields.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Text search on indexed fields.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "properties",
                    "name": "properties",
                    "scope": "metadata",
                    "example": "name,location",
                    "required": false,
                    "description": "Properties returned in the object (separated by a comma). If empty, all properties are returned.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "in": "query",
                    "schema": {
                        "description": "Properties returned in the object (separated by a comma). If empty, all properties are returned.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "totalSize",
                    "name": "totalSize",
                    "example": 10,
                    "required": false,
                    "default": 0,
                    "scope": "metadata",
                    "type": "integer",
                    "description": "Number of returned results.",
                    "in": "query",
                    "schema": {
                        "description": "Number of returned results.",
                        "type": "integer"
                    }
                },
                {
                    "id": "nextPageToken",
                    "name": "nextPageToken",
                    "example": "xxx",
                    "required": false,
                    "default": 0,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Token to retrieve the next page of results.",
                    "in": "query",
                    "schema": {
                        "description": "Token to retrieve the next page of results.",
                        "type": "string"
                    }
                },
                {
                    "id": "data",
                    "name": "data",
                    "type": "array",
                    "scope": "data",
                    "description": "List of machine accounts",
                    "required": true,
                    "items": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string",
                                "description": "Machine account id."
                            },
                            "name": {
                                "type": "string",
                                "description": "Machine account name."
                            }
                        },
                        "required": ["id"]
                    },
                    "in": "body",
                    "schema": {
                        "description": "List of machine accounts",
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "id": {
                                    "type": "string",
                                    "description": "Machine account id."
                                },
                                "name": {
                                    "type": "string",
                                    "description": "Machine account name."
                                }
                            },
                            "required": ["id"]
                        }
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.accounts.machines",
            "inputId": "OwlAccessBetaAccountsMachinesListInput",
            "outputId": "OwlAccessBetaAccountsMachinesListOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "authorization": [
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "listMachineAccounts"
        },
        "owl-access.beta.accounts.users.list": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.accounts.users.list",
            "type": "list",
            "name": "listUserAccounts",
            "title": "List users",
            "description": "List user accounts in OwlGrid manager.",
            "http": {
                "method": "GET",
                "path": "/users"
            },
            "access": {
                "rights": ["users.list"]
            },
            "input": [
                {
                    "id": "pageSize",
                    "scope": "metadata",
                    "name": "pageSize",
                    "title": "Page size",
                    "description": "Maximum number of items to return.",
                    "example": 10,
                    "required": false,
                    "default": 100,
                    "type": "integer",
                    "maximum": 1000,
                    "controller": {
                        "required": true,
                        "type": "integer"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Maximum number of items to return.",
                        "type": "integer",
                        "default": 100,
                        "maximum": 1000
                    }
                },
                {
                    "id": "pageToken",
                    "name": "pageToken",
                    "scope": "metadata",
                    "example": "token",
                    "required": false,
                    "description": "Token to specify the next page in the list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 100,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Token to specify the next page in the list.",
                        "type": "string",
                        "maxLength": 100
                    }
                },
                {
                    "id": "orderBy",
                    "name": "orderBy",
                    "scope": "metadata",
                    "example": "createDate desc",
                    "required": false,
                    "description": "Order results list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Order results list.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "filter",
                    "name": "filter",
                    "scope": "metadata",
                    "example": "name includes 'hello'",
                    "required": false,
                    "description": "Filter results list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Filter results list.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "search",
                    "name": "search",
                    "scope": "metadata",
                    "example": "hello",
                    "required": false,
                    "description": "Text search on indexed fields.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Text search on indexed fields.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "properties",
                    "name": "properties",
                    "scope": "metadata",
                    "example": "name,location",
                    "required": false,
                    "description": "Properties returned in the object (separated by a comma). If empty, all properties are returned.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "in": "query",
                    "schema": {
                        "description": "Properties returned in the object (separated by a comma). If empty, all properties are returned.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "totalSize",
                    "name": "totalSize",
                    "example": 10,
                    "required": false,
                    "default": 0,
                    "scope": "metadata",
                    "type": "integer",
                    "description": "Number of returned results.",
                    "in": "query",
                    "schema": {
                        "description": "Number of returned results.",
                        "type": "integer"
                    }
                },
                {
                    "id": "nextPageToken",
                    "name": "nextPageToken",
                    "example": "xxx",
                    "required": false,
                    "default": 0,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Token to retrieve the next page of results.",
                    "in": "query",
                    "schema": {
                        "description": "Token to retrieve the next page of results.",
                        "type": "string"
                    }
                },
                {
                    "id": "data",
                    "name": "data",
                    "type": "array",
                    "scope": "data",
                    "description": "List of users",
                    "required": true,
                    "items": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string",
                                "description": "User id."
                            },
                            "email": {
                                "type": "string",
                                "description": "User email."
                            },
                            "fullName": {
                                "type": "string",
                                "description": "User full name."
                            },
                            "githubAccountId": {
                                "type": ["string", "null"],
                                "description": "User github account id."
                            }
                        },
                        "required": ["id"]
                    },
                    "in": "body",
                    "schema": {
                        "description": "List of users",
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "id": {
                                    "type": "string",
                                    "description": "User id."
                                },
                                "email": {
                                    "type": "string",
                                    "description": "User email."
                                },
                                "fullName": {
                                    "type": "string",
                                    "description": "User full name."
                                },
                                "githubAccountId": {
                                    "type": ["string", "null"],
                                    "description": "User github account id."
                                }
                            },
                            "required": ["id"]
                        }
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.accounts.users",
            "inputId": "OwlAccessBetaAccountsUsersListInput",
            "outputId": "OwlAccessBetaAccountsUsersListOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "authorization": [
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "listUserAccounts"
        },
        "owl-access.beta.roles.assignments.create": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.roles.assignments.create",
            "type": "create",
            "name": "assignRole",
            "title": "Assign an account to a role",
            "description": "Assign an account to a role.",
            "http": {
                "method": "POST",
                "path": "/roles/:roleId/assignments"
            },
            "access": {
                "rights": ["admin"]
            },
            "input": [
                {
                    "id": "roleId",
                    "name": "roleId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "Role id.",
                    "in": "path",
                    "schema": {
                        "description": "Role id.",
                        "type": "string"
                    }
                },
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "accountId": "1234567890"
                    },
                    "required": true,
                    "requiredProperties": ["accountId"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "Role assignment data.",
                    "properties": {
                        "accountId": {
                            "type": "string",
                            "description": "Account identifier (user or machine)."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "Role assignment data.",
                        "type": "object",
                        "properties": {
                            "accountId": {
                                "type": "string",
                                "description": "Account identifier (user or machine)."
                            }
                        },
                        "required": ["accountId"]
                    }
                },
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "id",
                    "name": "id",
                    "example": "true",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Created resource id.",
                    "in": "query",
                    "schema": {
                        "description": "Created resource id.",
                        "type": "string"
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.roles.assignments",
            "inputId": "OwlAccessBetaRolesAssignmentsCreateInput",
            "outputId": "OwlAccessBetaRolesAssignmentsCreateOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "authorization": [
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "assignRole"
        },
        "owl-access.beta.roles.assignments.delete": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.roles.assignments.delete",
            "type": "delete",
            "name": "deleteRoleAssignment",
            "title": "Delete a role assignment",
            "description": "Delete a role assignment.",
            "http": {
                "method": "DELETE",
                "path": "/roles/:roleId/assignments/:assignmentId"
            },
            "access": {
                "rights": ["admin"]
            },
            "input": [
                {
                    "id": "roleId",
                    "name": "roleId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "Role id.",
                    "in": "path",
                    "schema": {
                        "description": "Role id.",
                        "type": "string"
                    }
                },
                {
                    "id": "assignmentId",
                    "name": "assignmentId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "Role assignment id.",
                    "in": "path",
                    "schema": {
                        "description": "Role assignment id.",
                        "type": "string"
                    }
                },
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "id",
                    "name": "id",
                    "example": "true",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Deleted resource id.",
                    "in": "query",
                    "schema": {
                        "description": "Deleted resource id.",
                        "type": "string"
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.roles.assignments",
            "inputId": "OwlAccessBetaRolesAssignmentsDeleteInput",
            "outputId": "OwlAccessBetaRolesAssignmentsDeleteOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "authorization": [
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "deleteRoleAssignment"
        },
        "owl-access.beta.roles.assignments.list": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.roles.assignments.list",
            "type": "list",
            "name": "listRolesAssignments",
            "title": "List roles assignments",
            "description": "List roles assignments to accounts. TODO create a more secure version of this operation for workspaces",
            "http": {
                "method": "GET",
                "path": "/roles/:roleId/assignments"
            },
            "access": {
                "rights": ["roles.assignments.list"]
            },
            "input": [
                {
                    "id": "pageSize",
                    "scope": "metadata",
                    "name": "pageSize",
                    "title": "Page size",
                    "description": "Maximum number of items to return.",
                    "example": 10,
                    "required": false,
                    "default": 100,
                    "type": "integer",
                    "maximum": 1000,
                    "controller": {
                        "required": true,
                        "type": "integer"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Maximum number of items to return.",
                        "type": "integer",
                        "default": 100,
                        "maximum": 1000
                    }
                },
                {
                    "id": "pageToken",
                    "name": "pageToken",
                    "scope": "metadata",
                    "example": "token",
                    "required": false,
                    "description": "Token to specify the next page in the list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 100,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Token to specify the next page in the list.",
                        "type": "string",
                        "maxLength": 100
                    }
                },
                {
                    "id": "orderBy",
                    "name": "orderBy",
                    "scope": "metadata",
                    "example": "createDate desc",
                    "required": false,
                    "description": "Order results list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Order results list.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "filter",
                    "name": "filter",
                    "scope": "metadata",
                    "example": "name includes 'hello'",
                    "required": false,
                    "description": "Filter results list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Filter results list.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "search",
                    "name": "search",
                    "scope": "metadata",
                    "example": "hello",
                    "required": false,
                    "description": "Text search on indexed fields.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Text search on indexed fields.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "properties",
                    "name": "properties",
                    "scope": "metadata",
                    "example": "name,location",
                    "required": false,
                    "description": "Properties returned in the object (separated by a comma). If empty, all properties are returned.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "in": "query",
                    "schema": {
                        "description": "Properties returned in the object (separated by a comma). If empty, all properties are returned.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "totalSize",
                    "name": "totalSize",
                    "example": 10,
                    "required": false,
                    "default": 0,
                    "scope": "metadata",
                    "type": "integer",
                    "description": "Number of returned results.",
                    "in": "query",
                    "schema": {
                        "description": "Number of returned results.",
                        "type": "integer"
                    }
                },
                {
                    "id": "nextPageToken",
                    "name": "nextPageToken",
                    "example": "xxx",
                    "required": false,
                    "default": 0,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Token to retrieve the next page of results.",
                    "in": "query",
                    "schema": {
                        "description": "Token to retrieve the next page of results.",
                        "type": "string"
                    }
                },
                {
                    "id": "data",
                    "name": "data",
                    "type": "array",
                    "scope": "data",
                    "description": "List of roles assignments",
                    "required": true,
                    "items": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string",
                                "description": "Role assignment id."
                            },
                            "accountId": {
                                "type": "string",
                                "description": "Account id."
                            },
                            "roleId": {
                                "type": "string",
                                "description": "Role id."
                            }
                        },
                        "required": ["id", "accountId", "roleId"]
                    },
                    "in": "body",
                    "schema": {
                        "description": "List of roles assignments",
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "id": {
                                    "type": "string",
                                    "description": "Role assignment id."
                                },
                                "accountId": {
                                    "type": "string",
                                    "description": "Account id."
                                },
                                "roleId": {
                                    "type": "string",
                                    "description": "Role id."
                                }
                            },
                            "required": ["id", "accountId", "roleId"]
                        }
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.roles.assignments",
            "inputId": "OwlAccessBetaRolesAssignmentsListInput",
            "outputId": "OwlAccessBetaRolesAssignmentsListOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "authorization": [
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "listRolesAssignments"
        },
        "owl-access.beta.roles.create": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.roles.create",
            "type": "create",
            "name": "createRole",
            "title": "Create a role",
            "description": "Create a new role.",
            "http": {
                "method": "POST",
                "path": "/roles"
            },
            "access": {
                "rights": ["admin"]
            },
            "input": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "name": "My role",
                        "rights": [
                            {
                                "operationId": "owl-access.beta.roles.create",
                                "perimeterId": "owl",
                                "environmentId": "1234567890"
                            }
                        ]
                    },
                    "required": true,
                    "requiredProperties": ["name", "rights"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "Role object data.",
                    "properties": {
                        "name": {
                            "type": "string",
                            "description": "Role name."
                        },
                        "rights": {
                            "type": "array",
                            "description": "Role rights.",
                            "items": {
                                "type": "object",
                                "description": "Role right.",
                                "properties": {
                                    "operationId": {
                                        "type": "string",
                                        "description": "Operation identifier."
                                    },
                                    "perimeterId": {
                                        "type": "string",
                                        "description": "Perimeter identifier."
                                    },
                                    "environmentId": {
                                        "type": "string",
                                        "description": "Environment identifier."
                                    }
                                },
                                "required": ["operationId", "perimeterId", "environmentId"]
                            }
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "Role object data.",
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": "string",
                                "description": "Role name."
                            },
                            "rights": {
                                "type": "array",
                                "description": "Role rights.",
                                "items": {
                                    "type": "object",
                                    "description": "Role right.",
                                    "properties": {
                                        "operationId": {
                                            "type": "string",
                                            "description": "Operation identifier."
                                        },
                                        "perimeterId": {
                                            "type": "string",
                                            "description": "Perimeter identifier."
                                        },
                                        "environmentId": {
                                            "type": "string",
                                            "description": "Environment identifier."
                                        }
                                    },
                                    "required": ["operationId", "perimeterId", "environmentId"]
                                }
                            }
                        },
                        "required": ["name", "rights"]
                    }
                },
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "id",
                    "name": "id",
                    "example": "true",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Created resource id.",
                    "in": "query",
                    "schema": {
                        "description": "Created resource id.",
                        "type": "string"
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.roles",
            "inputId": "OwlAccessBetaRolesCreateInput",
            "outputId": "OwlAccessBetaRolesCreateOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "authorization": [
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "createRole"
        },
        "owl-access.beta.roles.delete": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.roles.delete",
            "type": "delete",
            "name": "deleteRole",
            "title": "Delete a role",
            "description": "Delete a role.",
            "http": {
                "method": "DELETE",
                "path": "/roles/:roleId"
            },
            "access": {
                "rights": ["admin"]
            },
            "input": [
                {
                    "id": "roleId",
                    "name": "roleId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "Role id.",
                    "in": "path",
                    "schema": {
                        "description": "Role id.",
                        "type": "string"
                    }
                },
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "id",
                    "name": "id",
                    "example": "true",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Deleted resource id.",
                    "in": "query",
                    "schema": {
                        "description": "Deleted resource id.",
                        "type": "string"
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.roles",
            "inputId": "OwlAccessBetaRolesDeleteInput",
            "outputId": "OwlAccessBetaRolesDeleteOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "authorization": [
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "deleteRole"
        },
        "owl-access.beta.roles.list": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.roles.list",
            "type": "list",
            "name": "listRoles",
            "title": "List roles",
            "description": "List roles. TODO create a more secure version of this operation for workspaces",
            "http": {
                "method": "GET",
                "path": "/roles"
            },
            "access": {
                "rights": ["roles.list"]
            },
            "input": [
                {
                    "id": "pageSize",
                    "scope": "metadata",
                    "name": "pageSize",
                    "title": "Page size",
                    "description": "Maximum number of items to return.",
                    "example": 10,
                    "required": false,
                    "default": 100,
                    "type": "integer",
                    "maximum": 1000,
                    "controller": {
                        "required": true,
                        "type": "integer"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Maximum number of items to return.",
                        "type": "integer",
                        "default": 100,
                        "maximum": 1000
                    }
                },
                {
                    "id": "pageToken",
                    "name": "pageToken",
                    "scope": "metadata",
                    "example": "token",
                    "required": false,
                    "description": "Token to specify the next page in the list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 100,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Token to specify the next page in the list.",
                        "type": "string",
                        "maxLength": 100
                    }
                },
                {
                    "id": "orderBy",
                    "name": "orderBy",
                    "scope": "metadata",
                    "example": "createDate desc",
                    "required": false,
                    "description": "Order results list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Order results list.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "filter",
                    "name": "filter",
                    "scope": "metadata",
                    "example": "name includes 'hello'",
                    "required": false,
                    "description": "Filter results list.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Filter results list.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "search",
                    "name": "search",
                    "scope": "metadata",
                    "example": "hello",
                    "required": false,
                    "description": "Text search on indexed fields.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "string"
                    },
                    "in": "query",
                    "schema": {
                        "description": "Text search on indexed fields.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "properties",
                    "name": "properties",
                    "scope": "metadata",
                    "example": "name,location",
                    "required": false,
                    "description": "Properties returned in the object (separated by a comma). If empty, all properties are returned.",
                    "default": "",
                    "type": "string",
                    "maxLength": 800,
                    "controller": {
                        "required": true,
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "in": "query",
                    "schema": {
                        "description": "Properties returned in the object (separated by a comma). If empty, all properties are returned.",
                        "type": "string",
                        "maxLength": 800
                    }
                },
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "totalSize",
                    "name": "totalSize",
                    "example": 10,
                    "required": false,
                    "default": 0,
                    "scope": "metadata",
                    "type": "integer",
                    "description": "Number of returned results.",
                    "in": "query",
                    "schema": {
                        "description": "Number of returned results.",
                        "type": "integer"
                    }
                },
                {
                    "id": "nextPageToken",
                    "name": "nextPageToken",
                    "example": "xxx",
                    "required": false,
                    "default": 0,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Token to retrieve the next page of results.",
                    "in": "query",
                    "schema": {
                        "description": "Token to retrieve the next page of results.",
                        "type": "string"
                    }
                },
                {
                    "id": "data",
                    "name": "data",
                    "type": "array",
                    "scope": "data",
                    "description": "List of roles",
                    "required": true,
                    "items": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string",
                                "description": "Role id."
                            },
                            "name": {
                                "type": "string",
                                "description": "Role name."
                            },
                            "rights": {
                                "type": "array",
                                "description": "Role rights.",
                                "items": {
                                    "type": "object",
                                    "description": "Role right.",
                                    "properties": {
                                        "operationId": {
                                            "type": "string",
                                            "description": "Operation identifier."
                                        },
                                        "perimeterId": {
                                            "type": "string",
                                            "description": "Perimeter identifier."
                                        },
                                        "environmentId": {
                                            "type": "string",
                                            "description": "Environment identifier."
                                        }
                                    }
                                }
                            }
                        },
                        "required": ["id", "name", "rights"]
                    },
                    "in": "body",
                    "schema": {
                        "description": "List of roles",
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "id": {
                                    "type": "string",
                                    "description": "Role id."
                                },
                                "name": {
                                    "type": "string",
                                    "description": "Role name."
                                },
                                "rights": {
                                    "type": "array",
                                    "description": "Role rights.",
                                    "items": {
                                        "type": "object",
                                        "description": "Role right.",
                                        "properties": {
                                            "operationId": {
                                                "type": "string",
                                                "description": "Operation identifier."
                                            },
                                            "perimeterId": {
                                                "type": "string",
                                                "description": "Perimeter identifier."
                                            },
                                            "environmentId": {
                                                "type": "string",
                                                "description": "Environment identifier."
                                            }
                                        }
                                    }
                                }
                            },
                            "required": ["id", "name", "rights"]
                        }
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.roles",
            "inputId": "OwlAccessBetaRolesListInput",
            "outputId": "OwlAccessBetaRolesListOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "authorization": [
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "listRoles"
        },
        "owl-access.beta.accounts.users.sendMagicToken": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.accounts.users.sendMagicToken",
            "type": "action",
            "name": "sendMagicToken",
            "title": "Send a magic Token",
            "description": "Send a magic Token to the user. This operation is triggered when the user fill him email address in the login form. The magic token (4 digits) is sent to the user by email. The user can then enter the 4 digits in the interface to be automatically logged in.",
            "http": {
                "method": "POST",
                "path": "/sendMagicToken"
            },
            "access": {
                "rights": []
            },
            "input": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "email": "john.doe@acme.org"
                    },
                    "required": true,
                    "requiredProperties": ["email"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "User data.",
                    "properties": {
                        "email": {
                            "type": "string",
                            "description": "User email.",
                            "format": "email"
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "User data.",
                        "type": "object",
                        "properties": {
                            "email": {
                                "type": "string",
                                "description": "User email.",
                                "format": "email"
                            }
                        },
                        "required": ["email"]
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "message",
                    "name": "message",
                    "example": "success",
                    "required": true,
                    "scope": "data",
                    "type": "string",
                    "description": "Success message.",
                    "in": "body",
                    "schema": {
                        "description": "Success message.",
                        "type": "string"
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.accounts.users",
            "inputId": "OwlAccessBetaAccountsUsersSendMagicTokenInput",
            "outputId": "OwlAccessBetaAccountsUsersSendMagicTokenOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "sendMagicToken"
        },
        "owl-access.beta.accounts.users.update": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.accounts.users.update",
            "type": "update",
            "name": "updateUserAccount",
            "title": "Update a user",
            "description": "Update a user.",
            "http": {
                "method": "POST",
                "path": "/users/:userId"
            },
            "access": {
                "rights": ["admin"]
            },
            "input": [
                {
                    "id": "userId",
                    "name": "userId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "User id.",
                    "in": "path",
                    "schema": {
                        "description": "User id.",
                        "type": "string"
                    }
                },
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "firstName": "John",
                        "lastName": "Doe",
                        "email": "john.doe@acme.org"
                    },
                    "required": true,
                    "requiredProperties": ["firstName", "lastName", "email"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "User object data.",
                    "properties": {
                        "firstName": {
                            "type": "string",
                            "description": "User first name."
                        },
                        "lastName": {
                            "type": "string",
                            "description": "User last name."
                        },
                        "email": {
                            "type": "string",
                            "description": "User email.",
                            "format": "email"
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "User object data.",
                        "type": "object",
                        "properties": {
                            "firstName": {
                                "type": "string",
                                "description": "User first name."
                            },
                            "lastName": {
                                "type": "string",
                                "description": "User last name."
                            },
                            "email": {
                                "type": "string",
                                "description": "User email.",
                                "format": "email"
                            }
                        },
                        "required": ["firstName", "lastName", "email"]
                    }
                },
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "id",
                    "name": "id",
                    "example": "true",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Updated resource id.",
                    "in": "query",
                    "schema": {
                        "description": "Updated resource id.",
                        "type": "string"
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.accounts.users",
            "inputId": "OwlAccessBetaAccountsUsersUpdateInput",
            "outputId": "OwlAccessBetaAccountsUsersUpdateOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "authorization": [
                {
                    "id": "Authorization",
                    "name": "Authorization",
                    "scope": "technical",
                    "example": "Bearer eyJhbGciO...",
                    "required": true,
                    "description": "Access token in JWT Bearer format.",
                    "default": "",
                    "type": "string",
                    "in": "header",
                    "schema": {
                        "description": "Access token in JWT Bearer format.",
                        "type": "string"
                    }
                },
                {
                    "id": "claims",
                    "name": "Claims",
                    "scope": "generated",
                    "example": {
                        "iss": "https://auth.app.owlgrid.com/",
                        "sub": "BbzTGgHjEqcm",
                        "aud": "https://app.owlgrid.com/",
                        "iat": 1677531913966,
                        "dom": "owl.manager",
                        "ope": ["owl"],
                        "per": ["owl"],
                        "env": ["owl"]
                    },
                    "required": false,
                    "description": "Claims of the token (extracted in middlewares).",
                    "default": {},
                    "type": "object",
                    "properties": {
                        "iss": {
                            "type": "string",
                            "description": "Issuer of the token.",
                            "example": "https://auth.app.owlgrid.com/"
                        },
                        "sub": {
                            "type": "string",
                            "description": "Subject of the token.",
                            "example": "BbzTGgHjEqcm"
                        },
                        "aud": {
                            "type": "string",
                            "description": "Audience of the token.",
                            "example": "https://app.owlgrid.com/"
                        },
                        "iat": {
                            "type": "number",
                            "description": "Issued at of the token.",
                            "example": 1677531913966
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "example": ["owl"]
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "example": ["owl"]
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "example": ["owl"]
                        }
                    },
                    "schema": {
                        "description": "Claims of the token (extracted in middlewares).",
                        "type": "object",
                        "default": {},
                        "properties": {
                            "iss": {
                                "type": "string",
                                "description": "Issuer of the token.",
                                "example": "https://auth.app.owlgrid.com/"
                            },
                            "sub": {
                                "type": "string",
                                "description": "Subject of the token.",
                                "example": "BbzTGgHjEqcm"
                            },
                            "aud": {
                                "type": "string",
                                "description": "Audience of the token.",
                                "example": "https://app.owlgrid.com/"
                            },
                            "iat": {
                                "type": "number",
                                "description": "Issued at of the token.",
                                "example": 1677531913966
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "example": ["owl"]
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "example": ["owl"]
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "example": ["owl"]
                            }
                        }
                    }
                }
            ],
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "updateUserAccount"
        },
        "owl-access.beta.accounts.users.validateMagicToken": {
            "$schema": "./../../../../toolbox/schemas/operation.json",
            "id": "owl-access.beta.accounts.users.validateMagicToken",
            "type": "action",
            "name": "validateMagicToken",
            "title": "Validate a magic Token",
            "description": "Validate a magic token sent to the user. This operation happens when the user enters the magic token received by email in the interface (4 digits). It returns an access token that can be used to authenticate the user in the future.",
            "http": {
                "method": "POST",
                "path": "/validateMagicToken"
            },
            "access": {
                "rights": []
            },
            "input": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "userEmail": "john@doe.com",
                        "magicToken": "0000"
                    },
                    "required": true,
                    "requiredProperties": ["userEmail", "magicToken"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "properties": {
                        "magicToken": {
                            "type": "string",
                            "description": "Magic token (used to generate an access token)."
                        },
                        "userEmail": {
                            "type": "string",
                            "description": "User email."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "type": "object",
                        "properties": {
                            "magicToken": {
                                "type": "string",
                                "description": "Magic token (used to generate an access token)."
                            },
                            "userEmail": {
                                "type": "string",
                                "description": "User email."
                            }
                        },
                        "required": ["userEmail", "magicToken"]
                    }
                }
            ],
            "output": [
                {
                    "id": "operationId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "runId",
                    "example": " 123e4567-e89b-12d3-a456-426614174000",
                    "required": false,
                    "scope": "technical",
                    "type": "string",
                    "description": "Operation run identifier.",
                    "in": "header",
                    "schema": {
                        "description": "Operation run identifier.",
                        "type": "string"
                    }
                },
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"
                    },
                    "required": true,
                    "requiredProperties": ["accessToken", "userId"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "Access data.",
                    "properties": {
                        "accessToken": {
                            "type": "string",
                            "description": "Access token (JWT format)."
                        },
                        "userId": {
                            "type": "string",
                            "description": "User ID."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "Access data.",
                        "type": "object",
                        "properties": {
                            "accessToken": {
                                "type": "string",
                                "description": "Access token (JWT format)."
                            },
                            "userId": {
                                "type": "string",
                                "description": "User ID."
                            }
                        },
                        "required": ["accessToken", "userId"]
                    }
                }
            ],
            "errors": [
                {
                    "id": "generic.beta.errors.internal",
                    "message": "Internal Error",
                    "description": "An internal error occured.",
                    "solution": "If the error persists, please contact support.",
                    "default": true,
                    "http": {
                        "code": 500
                    }
                },
                {
                    "id": "generic.beta.errors.unauthorized",
                    "message": "Unauthorized",
                    "description": "Account {{accountId}} is not authorized to perform this operation.",
                    "solution": "Please check that the scope (roles, perimeters, environments) of the access token are correct.",
                    "default": true,
                    "http": {
                        "code": 401
                    }
                },
                {
                    "id": "generic.beta.errors.notFound",
                    "message": "Not Found",
                    "description": "The requested operation could not be found.",
                    "solution": "Please check the URL and try again.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                },
                {
                    "id": "generic.beta.errors.badRequest",
                    "message": "Bad Request",
                    "description": "The request was malformed.",
                    "solution": "Please check the request and try again.",
                    "default": true,
                    "http": {
                        "code": 400
                    }
                },
                {
                    "id": "generic.beta.errors.workspaces.notFound",
                    "message": "Workspace {{workspaceId}} not found",
                    "description": "The workspace {{workspaceId}} does not exists.",
                    "solution": "Check that the workspace exists.",
                    "default": true,
                    "http": {
                        "code": 404
                    }
                }
            ],
            "resourceId": "owl-access.beta.accounts.users",
            "inputId": "OwlAccessBetaAccountsUsersValidateMagicTokenInput",
            "outputId": "OwlAccessBetaAccountsUsersValidateMagicTokenOutput",
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "events": [
                {
                    "$schema": "./../../../../toolbox/schemas/event.json",
                    "id": "generic.beta.events.request.event",
                    "name": "requestSuccess",
                    "title": "Request success event",
                    "description": "Representation of event for an execution",
                    "schema": [
                        {
                            "id": "eventId",
                            "name": "eventId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionId",
                            "name": "executionId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "executionDate",
                            "name": "executionDate",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "operationId",
                            "name": "operationId",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "triggerType",
                            "name": "triggerType",
                            "type": "string",
                            "required": true
                        },
                        {
                            "id": "data",
                            "name": "data",
                            "type": "object"
                        }
                    ]
                }
            ],
            "controllerId": "validateMagicToken"
        }
    },
    "definitions": {
        "owl-access.beta.definitions.accounts.addClaimsToAccessToken.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.addClaimsToAccessToken.input",
            "name": "addClaimsToAccessTokenInput",
            "title": "Add claims to an active access token - inputs",
            "description": "Representation of input parameters for the add claims to an active access token operation.",
            "type": "inputs",
            "additionalProperties": false,
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {},
                    "required": true,
                    "requiredProperties": [],
                    "default": false,
                    "scope": "data",
                    "additionalProperties": false,
                    "type": "object",
                    "properties": {
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "items": {
                                "type": "string"
                            }
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "items": {
                                "type": "string"
                            }
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "items": {
                                "type": "string"
                            }
                        }
                    },
                    "in": "body",
                    "schema": {
                        "type": "object",
                        "properties": {
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "items": {
                                    "type": "string"
                                }
                            }
                        },
                        "required": []
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.addClaimsToAccessToken.output": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.addClaimsToAccessToken.output",
            "name": "addClaimsToAccessTokenOutput",
            "title": "Add claims to an active access token - outputs",
            "description": "Representation of output parameters for the add claims to an active access token operation.",
            "type": "outputs",
            "additionalProperties": false,
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"
                    },
                    "required": true,
                    "requiredProperties": ["accessToken"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "Access data.",
                    "properties": {
                        "accessToken": {
                            "type": "string",
                            "description": "Access token (JWT format)."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "Access data.",
                        "type": "object",
                        "properties": {
                            "accessToken": {
                                "type": "string",
                                "description": "Access token (JWT format)."
                            }
                        },
                        "required": ["accessToken"]
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.get.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.get.input",
            "name": "getUserInput",
            "title": "Get user - inputs",
            "description": "Representation of input parameters for the get user operation.",
            "type": "inputs",
            "additionalProperties": true,
            "schema": [
                {
                    "id": "userId",
                    "name": "userId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "User id.",
                    "in": "path",
                    "schema": {
                        "description": "User id.",
                        "type": "string"
                    }
                }
            ]
        },
        "owl-access.beta.definitions.generateAccessToken.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.generateAccessToken.input",
            "name": "generateAccessTokenInput",
            "title": "Generate an acess token - inputs",
            "description": "Representation of input parameters for the generate access token operation.",
            "type": "inputs",
            "additionalProperties": false,
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {},
                    "required": true,
                    "requiredProperties": ["sub"],
                    "default": false,
                    "additionalProperties": false,
                    "scope": "data",
                    "type": "object",
                    "properties": {
                        "sub": {
                            "type": "string",
                            "description": "Account id of the token subscriber."
                        },
                        "ope": {
                            "type": "array",
                            "description": "Operations id authorized. 'owl' is the root operation.",
                            "items": {
                                "type": "string"
                            }
                        },
                        "per": {
                            "type": "array",
                            "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                            "items": {
                                "type": "string"
                            }
                        },
                        "env": {
                            "type": "array",
                            "description": "Environments id authorized. 'owl' is the root environment.",
                            "items": {
                                "type": "string"
                            }
                        }
                    },
                    "in": "body",
                    "schema": {
                        "type": "object",
                        "properties": {
                            "sub": {
                                "type": "string",
                                "description": "Account id of the token subscriber."
                            },
                            "ope": {
                                "type": "array",
                                "description": "Operations id authorized. 'owl' is the root operation.",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "per": {
                                "type": "array",
                                "description": "Perimeters id containing authorized instances. 'owl' is the root perimeter, it includes every resources of the domain.",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "env": {
                                "type": "array",
                                "description": "Environments id authorized. 'owl' is the root environment.",
                                "items": {
                                    "type": "string"
                                }
                            }
                        },
                        "required": ["sub"]
                    }
                }
            ]
        },
        "owl-access.beta.definitions.generateAccessToken.output": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.generateAccessToken.output",
            "name": "generateAccessTokenOutput",
            "title": "Generate an access token - outputs",
            "description": "Representation of output parameters for the generate access token operation.",
            "type": "outputs",
            "additionalProperties": false,
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"
                    },
                    "required": true,
                    "requiredProperties": ["accessToken", "accountId"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "Access data.",
                    "properties": {
                        "accessToken": {
                            "type": "string",
                            "description": "Access token (JWT format)."
                        },
                        "accountId": {
                            "type": "string",
                            "description": "Account ID."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "Access data.",
                        "type": "object",
                        "properties": {
                            "accessToken": {
                                "type": "string",
                                "description": "Access token (JWT format)."
                            },
                            "accountId": {
                                "type": "string",
                                "description": "Account ID."
                            }
                        },
                        "required": ["accessToken", "accountId"]
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.getGithubAccountId.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.getGithubAccountId.input",
            "name": "getGithubAccountIdInput",
            "title": "Get Github account id - inputs",
            "description": "Representation of input parameters for the get Github account id operation.",
            "type": "inputs",
            "additionalProperties": true,
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "code": "1234567890abcdef",
                        "userId": "1234567890abcdef"
                    },
                    "required": true,
                    "requiredProperties": ["code", "userId"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "properties": {
                        "code": {
                            "type": "string",
                            "description": "Github OAuth code."
                        },
                        "userId": {
                            "type": "string",
                            "description": "OwlGrid user id."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "type": "object",
                        "properties": {
                            "code": {
                                "type": "string",
                                "description": "Github OAuth code."
                            },
                            "userId": {
                                "type": "string",
                                "description": "OwlGrid user id."
                            }
                        },
                        "required": ["code", "userId"]
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.getGithubAuthorizationToken.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.getGithubAuthorizationToken.input",
            "name": "getGithubAuthorizationTokenInut",
            "title": "Get Github authorization token - inputs",
            "description": "Representation of input parameters for the get Github authorization token operation.",
            "type": "inputs",
            "additionalProperties": true,
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "code": "1234567890abcdef"
                    },
                    "required": true,
                    "requiredProperties": ["code"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "properties": {
                        "code": {
                            "type": "string",
                            "description": "Github OAuth code."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "type": "object",
                        "properties": {
                            "code": {
                                "type": "string",
                                "description": "Github OAuth code."
                            }
                        },
                        "required": ["code"]
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.getGithubAuthorizationToken.output": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.getGithubAuthorizationToken.output",
            "name": "getGithubAuthorizationTokenOutput",
            "title": "Github authorization token - list",
            "description": "Representation of a list of Github authorization token.",
            "type": "resource",
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "type": "object",
                    "scope": "data",
                    "description": "Github authorization token.",
                    "required": true,
                    "properties": {
                        "authorizationToken": {
                            "type": "string",
                            "description": "Authorization token."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "Github authorization token.",
                        "type": "object",
                        "properties": {
                            "authorizationToken": {
                                "type": "string",
                                "description": "Authorization token."
                            }
                        }
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.githubAuthorizedRepositories.list.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.githubAuthorizedRepositories.list.input",
            "name": "githubAuthorizedRepositoriesInput",
            "title": "Github authorized repositories - inputs",
            "description": "Representation of input parameters for the list Github authorized repositories operation.",
            "type": "inputs",
            "schema": [
                {
                    "id": "githubAuthorizationToken",
                    "name": "githubAuthorizationToken",
                    "example": "ghu_n6...",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Github OAuth authorization token.",
                    "in": "query",
                    "schema": {
                        "description": "Github OAuth authorization token.",
                        "type": "string"
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.githubAuthorizedRepositories.list.output": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.githubAuthorizedRepositories.list.output",
            "name": "githubAuthorizedRepositoriesOutput",
            "title": "Github authorized repositories - list",
            "description": "Representation of a list of Github authorized repositories.",
            "type": "resource",
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "type": "array",
                    "scope": "data",
                    "description": "List of repositories",
                    "required": true,
                    "items": {
                        "type": "object",
                        "properties": {
                            "repositoryId": {
                                "type": "string",
                                "description": "Repository id."
                            },
                            "repositoryName": {
                                "type": "string",
                                "description": "Repository name."
                            },
                            "repositoryOwner": {
                                "type": "string",
                                "description": "Repository owner."
                            }
                        },
                        "required": ["repositoryId", "repositoryName", "repositoryOwner"]
                    },
                    "in": "body",
                    "schema": {
                        "description": "List of repositories",
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "repositoryId": {
                                    "type": "string",
                                    "description": "Repository id."
                                },
                                "repositoryName": {
                                    "type": "string",
                                    "description": "Repository name."
                                },
                                "repositoryOwner": {
                                    "type": "string",
                                    "description": "Repository owner."
                                }
                            },
                            "required": ["repositoryId", "repositoryName", "repositoryOwner"]
                        }
                    }
                }
            ]
        },
        "owl-access.beta.definitions.githubRepositoryBranches.list.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.githubRepositoryBranches.list.input",
            "name": "githubRepositoryBranchesInput",
            "title": "Github repository branches list - inputs",
            "description": "Representation of input parameters for the list Github repository branches list operation.",
            "type": "inputs",
            "schema": [
                {
                    "id": "githubAuthorizationToken",
                    "name": "githubAuthorizationToken",
                    "example": "ghu_n6...",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Github OAuth authorization token.",
                    "in": "query",
                    "schema": {
                        "description": "Github OAuth authorization token.",
                        "type": "string"
                    }
                },
                {
                    "id": "repositoryId",
                    "name": "repositoryId",
                    "example": "12345678",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Github repository id.",
                    "in": "query",
                    "schema": {
                        "description": "Github repository id.",
                        "type": "string"
                    }
                }
            ]
        },
        "owl-access.beta.definitions.githubRepositoryBranches.list.output": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.githubRepositoryBranches.list.output",
            "name": "githubRepositoryBranchesOutput",
            "title": "Github repository branches list - list",
            "description": "Representation of a list of Github repository branches list.",
            "type": "resource",
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "type": "array",
                    "scope": "data",
                    "description": "List of branches",
                    "required": true,
                    "items": {
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": "string",
                                "description": "Branch name."
                            }
                        },
                        "required": ["name"]
                    },
                    "in": "body",
                    "schema": {
                        "description": "List of branches",
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "name": {
                                    "type": "string",
                                    "description": "Branch name."
                                }
                            },
                            "required": ["name"]
                        }
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.githubUserInformation.get.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.githubUserInformation.get.input",
            "name": "githubUserInformationInput",
            "title": "Github user information - inputs",
            "description": "Representation of input parameters for the get Github user information operation.",
            "type": "inputs",
            "schema": [
                {
                    "id": "githubAuthorizationToken",
                    "name": "githubAuthorizationToken",
                    "example": "ghu_n6...",
                    "required": true,
                    "default": false,
                    "scope": "metadata",
                    "type": "string",
                    "description": "Github OAuth authorization token.",
                    "in": "query",
                    "schema": {
                        "description": "Github OAuth authorization token.",
                        "type": "string"
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.githubUserInformation.get.output": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.githubUserInformation.get.output",
            "name": "githubUserInformationOutput",
            "title": "Github user information - get",
            "description": "Representation of Github user information.",
            "type": "resource",
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "type": "object",
                    "scope": "data",
                    "description": "Github user data",
                    "required": true,
                    "requiredProperties": ["name", "id", "avatar"],
                    "properties": {
                        "name": {
                            "type": "string",
                            "description": "Github user name."
                        },
                        "id": {
                            "type": "string",
                            "description": "Github user id."
                        },
                        "avatar": {
                            "type": "string",
                            "description": "Github user avatar url."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "Github user data",
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": "string",
                                "description": "Github user name."
                            },
                            "id": {
                                "type": "string",
                                "description": "Github user id."
                            },
                            "avatar": {
                                "type": "string",
                                "description": "Github user avatar url."
                            }
                        },
                        "required": ["name", "id", "avatar"]
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.machines.delete.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.machines.delete.input",
            "name": "deleteMachineAccountInput",
            "title": "Delete machine account - inputs",
            "description": "Representation of input parameters for the delete machine account operation.",
            "type": "inputs",
            "additionalProperties": true,
            "schema": [
                {
                    "id": "machineAccountId",
                    "name": "machineAccountId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "Machine account id.",
                    "in": "path",
                    "schema": {
                        "description": "Machine account id.",
                        "type": "string"
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.machines.create.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.machines.create.input",
            "name": "createMachineAccountInput",
            "title": "Create machine account - inputs",
            "description": "Representation of input parameters for the create machine account operation.",
            "type": "inputs",
            "additionalProperties": true,
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "name": "Service Account Alpha"
                    },
                    "required": true,
                    "requiredProperties": ["name"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "Machine account object data.",
                    "properties": {
                        "name": {
                            "type": "string",
                            "description": "Machine account display name (can be modify later)."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "Machine account object data.",
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": "string",
                                "description": "Machine account display name (can be modify later)."
                            }
                        },
                        "required": ["name"]
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.machines.list.output": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.machines.list.output",
            "name": "machineAccountsList",
            "title": "machine accounts - list",
            "description": "Representation of a list of machine accounts of an organization.",
            "type": "resource",
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "type": "array",
                    "scope": "data",
                    "description": "List of machine accounts",
                    "required": true,
                    "items": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string",
                                "description": "Machine account id."
                            },
                            "name": {
                                "type": "string",
                                "description": "Machine account name."
                            }
                        },
                        "required": ["id"]
                    },
                    "in": "body",
                    "schema": {
                        "description": "List of machine accounts",
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "id": {
                                    "type": "string",
                                    "description": "Machine account id."
                                },
                                "name": {
                                    "type": "string",
                                    "description": "Machine account name."
                                }
                            },
                            "required": ["id"]
                        }
                    }
                }
            ]
        },
        "owl-access.beta.definitions.roles.assignments.create.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.roles.assignments.create.input",
            "name": "assignRoleInput",
            "title": "Assign role - inputs",
            "description": "Representation of input parameters for the assign role to an account operation.",
            "type": "inputs",
            "additionalProperties": true,
            "schema": [
                {
                    "id": "roleId",
                    "name": "roleId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "Role id.",
                    "in": "path",
                    "schema": {
                        "description": "Role id.",
                        "type": "string"
                    }
                },
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "accountId": "1234567890"
                    },
                    "required": true,
                    "requiredProperties": ["accountId"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "Role assignment data.",
                    "properties": {
                        "accountId": {
                            "type": "string",
                            "description": "Account identifier (user or machine)."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "Role assignment data.",
                        "type": "object",
                        "properties": {
                            "accountId": {
                                "type": "string",
                                "description": "Account identifier (user or machine)."
                            }
                        },
                        "required": ["accountId"]
                    }
                }
            ]
        },
        "owl-access.beta.definitions.roles.assignments.delete.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.roles.assignments.delete.input",
            "name": "deleteRoleAssignmentInput",
            "title": "Delete role assignment - inputs",
            "description": "Representation of input parameters for the delete role assignment operation.",
            "type": "inputs",
            "additionalProperties": true,
            "schema": [
                {
                    "id": "roleId",
                    "name": "roleId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "Role id.",
                    "in": "path",
                    "schema": {
                        "description": "Role id.",
                        "type": "string"
                    }
                },
                {
                    "id": "assignmentId",
                    "name": "assignmentId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "Role assignment id.",
                    "in": "path",
                    "schema": {
                        "description": "Role assignment id.",
                        "type": "string"
                    }
                }
            ]
        },
        "owl-access.beta.definitions.roles.assignments.list.output": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.roles.assignments.list.output",
            "name": "rolesAssignmentsListOutput",
            "title": "Roles assignments - list",
            "description": "Representation of a list of roles assignments.",
            "type": "resource",
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "type": "array",
                    "scope": "data",
                    "description": "List of roles assignments",
                    "required": true,
                    "items": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string",
                                "description": "Role assignment id."
                            },
                            "accountId": {
                                "type": "string",
                                "description": "Account id."
                            },
                            "roleId": {
                                "type": "string",
                                "description": "Role id."
                            }
                        },
                        "required": ["id", "accountId", "roleId"]
                    },
                    "in": "body",
                    "schema": {
                        "description": "List of roles assignments",
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "id": {
                                    "type": "string",
                                    "description": "Role assignment id."
                                },
                                "accountId": {
                                    "type": "string",
                                    "description": "Account id."
                                },
                                "roleId": {
                                    "type": "string",
                                    "description": "Role id."
                                }
                            },
                            "required": ["id", "accountId", "roleId"]
                        }
                    }
                }
            ]
        },
        "owl-access.beta.definitions.roles.create.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.roles.create.input",
            "name": "createRoleInput",
            "title": "Create role - inputs",
            "description": "Representation of input parameters for the create role operation.",
            "type": "inputs",
            "additionalProperties": true,
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "name": "My role",
                        "rights": [
                            {
                                "operationId": "owl-access.beta.roles.create",
                                "perimeterId": "owl",
                                "environmentId": "1234567890"
                            }
                        ]
                    },
                    "required": true,
                    "requiredProperties": ["name", "rights"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "Role object data.",
                    "properties": {
                        "name": {
                            "type": "string",
                            "description": "Role name."
                        },
                        "rights": {
                            "type": "array",
                            "description": "Role rights.",
                            "items": {
                                "type": "object",
                                "description": "Role right.",
                                "properties": {
                                    "operationId": {
                                        "type": "string",
                                        "description": "Operation identifier."
                                    },
                                    "perimeterId": {
                                        "type": "string",
                                        "description": "Perimeter identifier."
                                    },
                                    "environmentId": {
                                        "type": "string",
                                        "description": "Environment identifier."
                                    }
                                },
                                "required": ["operationId", "perimeterId", "environmentId"]
                            }
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "Role object data.",
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": "string",
                                "description": "Role name."
                            },
                            "rights": {
                                "type": "array",
                                "description": "Role rights.",
                                "items": {
                                    "type": "object",
                                    "description": "Role right.",
                                    "properties": {
                                        "operationId": {
                                            "type": "string",
                                            "description": "Operation identifier."
                                        },
                                        "perimeterId": {
                                            "type": "string",
                                            "description": "Perimeter identifier."
                                        },
                                        "environmentId": {
                                            "type": "string",
                                            "description": "Environment identifier."
                                        }
                                    },
                                    "required": ["operationId", "perimeterId", "environmentId"]
                                }
                            }
                        },
                        "required": ["name", "rights"]
                    }
                }
            ]
        },
        "owl-access.beta.definitions.roles.delete.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.roles.delete.input",
            "name": "deleteRoleInput",
            "title": "Delete role - inputs",
            "description": "Representation of input parameters for the delete role operation.",
            "type": "inputs",
            "additionalProperties": true,
            "schema": [
                {
                    "id": "roleId",
                    "name": "roleId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "Role id.",
                    "in": "path",
                    "schema": {
                        "description": "Role id.",
                        "type": "string"
                    }
                }
            ]
        },
        "owl-access.beta.definitions.roles.list.output": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.roles.list.output",
            "name": "rolesListOutput",
            "title": "Roles - list",
            "description": "Representation of a list of roles.",
            "type": "resource",
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "type": "array",
                    "scope": "data",
                    "description": "List of roles",
                    "required": true,
                    "items": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string",
                                "description": "Role id."
                            },
                            "name": {
                                "type": "string",
                                "description": "Role name."
                            },
                            "rights": {
                                "type": "array",
                                "description": "Role rights.",
                                "items": {
                                    "type": "object",
                                    "description": "Role right.",
                                    "properties": {
                                        "operationId": {
                                            "type": "string",
                                            "description": "Operation identifier."
                                        },
                                        "perimeterId": {
                                            "type": "string",
                                            "description": "Perimeter identifier."
                                        },
                                        "environmentId": {
                                            "type": "string",
                                            "description": "Environment identifier."
                                        }
                                    }
                                }
                            }
                        },
                        "required": ["id", "name", "rights"]
                    },
                    "in": "body",
                    "schema": {
                        "description": "List of roles",
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "id": {
                                    "type": "string",
                                    "description": "Role id."
                                },
                                "name": {
                                    "type": "string",
                                    "description": "Role name."
                                },
                                "rights": {
                                    "type": "array",
                                    "description": "Role rights.",
                                    "items": {
                                        "type": "object",
                                        "description": "Role right.",
                                        "properties": {
                                            "operationId": {
                                                "type": "string",
                                                "description": "Operation identifier."
                                            },
                                            "perimeterId": {
                                                "type": "string",
                                                "description": "Perimeter identifier."
                                            },
                                            "environmentId": {
                                                "type": "string",
                                                "description": "Environment identifier."
                                            }
                                        }
                                    }
                                }
                            },
                            "required": ["id", "name", "rights"]
                        }
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.sendMagicToken.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.sendMagicToken.input",
            "name": "sendMagicTokenInput",
            "title": "Send a magic Token - inputs",
            "description": "Representation of input parameters for the send magic token operation.",
            "type": "inputs",
            "additionalProperties": true,
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "email": "john.doe@acme.org"
                    },
                    "required": true,
                    "requiredProperties": ["email"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "User data.",
                    "properties": {
                        "email": {
                            "type": "string",
                            "description": "User email.",
                            "format": "email"
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "User data.",
                        "type": "object",
                        "properties": {
                            "email": {
                                "type": "string",
                                "description": "User email.",
                                "format": "email"
                            }
                        },
                        "required": ["email"]
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.checkExistence.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.checkExistence.input",
            "name": "checkUserAccountExistenceInput",
            "title": "Check user account existence - inputs",
            "description": "Representation of input parameters for the check user account existence operation.",
            "type": "inputs",
            "additionalProperties": false,
            "schema": [
                {
                    "id": "userId",
                    "name": "userId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "User id.",
                    "in": "path",
                    "schema": {
                        "description": "User id.",
                        "type": "string"
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.create.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.create.input",
            "name": "createUserInput",
            "title": "Create user - inputs",
            "description": "Representation of input parameters for the create user operation.",
            "type": "inputs",
            "additionalProperties": true,
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "firstName": "John",
                        "lastName": "Doe",
                        "email": "john.doe@acme.org"
                    },
                    "required": true,
                    "requiredProperties": ["firstName", "lastName", "email"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "User object data.",
                    "properties": {
                        "firstName": {
                            "type": "string",
                            "description": "User first name."
                        },
                        "lastName": {
                            "type": "string",
                            "description": "User last name."
                        },
                        "email": {
                            "type": "string",
                            "description": "User email.",
                            "format": "email"
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "User object data.",
                        "type": "object",
                        "properties": {
                            "firstName": {
                                "type": "string",
                                "description": "User first name."
                            },
                            "lastName": {
                                "type": "string",
                                "description": "User last name."
                            },
                            "email": {
                                "type": "string",
                                "description": "User email.",
                                "format": "email"
                            }
                        },
                        "required": ["firstName", "lastName", "email"]
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.delete.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.delete.input",
            "name": "deleteUserInput",
            "title": "Delete user - inputs",
            "description": "Representation of input parameters for the delete user operation.",
            "type": "inputs",
            "additionalProperties": true,
            "schema": [
                {
                    "id": "userId",
                    "name": "userId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "User id.",
                    "in": "path",
                    "schema": {
                        "description": "User id.",
                        "type": "string"
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.get.output": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.get.output",
            "name": "usersGetOutput",
            "title": "users - get",
            "description": "Representation of a user of an organization.",
            "type": "resource",
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "type": "object",
                    "scope": "data",
                    "description": "List of users",
                    "required": true,
                    "properties": {
                        "id": {
                            "type": "string",
                            "description": "User id."
                        },
                        "email": {
                            "type": "string",
                            "description": "User email."
                        },
                        "fullName": {
                            "type": "string",
                            "description": "User full name."
                        },
                        "githubAccountId": {
                            "type": ["string", "null"],
                            "description": "User github account id."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "List of users",
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string",
                                "description": "User id."
                            },
                            "email": {
                                "type": "string",
                                "description": "User email."
                            },
                            "fullName": {
                                "type": "string",
                                "description": "User full name."
                            },
                            "githubAccountId": {
                                "type": ["string", "null"],
                                "description": "User github account id."
                            }
                        }
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.list.output": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.list.output",
            "name": "usersList",
            "title": "users - list",
            "description": "Representation of a list of users of an organization.",
            "type": "resource",
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "type": "array",
                    "scope": "data",
                    "description": "List of users",
                    "required": true,
                    "items": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string",
                                "description": "User id."
                            },
                            "email": {
                                "type": "string",
                                "description": "User email."
                            },
                            "fullName": {
                                "type": "string",
                                "description": "User full name."
                            },
                            "githubAccountId": {
                                "type": ["string", "null"],
                                "description": "User github account id."
                            }
                        },
                        "required": ["id"]
                    },
                    "in": "body",
                    "schema": {
                        "description": "List of users",
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "id": {
                                    "type": "string",
                                    "description": "User id."
                                },
                                "email": {
                                    "type": "string",
                                    "description": "User email."
                                },
                                "fullName": {
                                    "type": "string",
                                    "description": "User full name."
                                },
                                "githubAccountId": {
                                    "type": ["string", "null"],
                                    "description": "User github account id."
                                }
                            },
                            "required": ["id"]
                        }
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.update.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.update.input",
            "name": "updateUserInput",
            "title": "Update user - inputs",
            "description": "Representation of input parameters for the update user operation.",
            "type": "inputs",
            "additionalProperties": true,
            "schema": [
                {
                    "id": "userId",
                    "name": "userId",
                    "example": "134hkVG2hkDG9shj8khj",
                    "required": true,
                    "default": false,
                    "scope": "path",
                    "type": "string",
                    "description": "User id.",
                    "in": "path",
                    "schema": {
                        "description": "User id.",
                        "type": "string"
                    }
                },
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "firstName": "John",
                        "lastName": "Doe",
                        "email": "john.doe@acme.org"
                    },
                    "required": true,
                    "requiredProperties": ["firstName", "lastName", "email"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "User object data.",
                    "properties": {
                        "firstName": {
                            "type": "string",
                            "description": "User first name."
                        },
                        "lastName": {
                            "type": "string",
                            "description": "User last name."
                        },
                        "email": {
                            "type": "string",
                            "description": "User email.",
                            "format": "email"
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "User object data.",
                        "type": "object",
                        "properties": {
                            "firstName": {
                                "type": "string",
                                "description": "User first name."
                            },
                            "lastName": {
                                "type": "string",
                                "description": "User last name."
                            },
                            "email": {
                                "type": "string",
                                "description": "User email.",
                                "format": "email"
                            }
                        },
                        "required": ["firstName", "lastName", "email"]
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.validateMagicToken.input": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.validateMagicToken.input",
            "name": "validateMagicTokenInput",
            "title": "Validate magic Token - inputs",
            "description": "Representation of input parameters for the delete user operation.",
            "type": "inputs",
            "additionalProperties": true,
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "userEmail": "john@doe.com",
                        "magicToken": "0000"
                    },
                    "required": true,
                    "requiredProperties": ["userEmail", "magicToken"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "properties": {
                        "magicToken": {
                            "type": "string",
                            "description": "Magic token (used to generate an access token)."
                        },
                        "userEmail": {
                            "type": "string",
                            "description": "User email."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "type": "object",
                        "properties": {
                            "magicToken": {
                                "type": "string",
                                "description": "Magic token (used to generate an access token)."
                            },
                            "userEmail": {
                                "type": "string",
                                "description": "User email."
                            }
                        },
                        "required": ["userEmail", "magicToken"]
                    }
                }
            ]
        },
        "owl-access.beta.definitions.accounts.users.validateMagicToken.output": {
            "$schema": "./../../../../toolbox/schemas/definition.json",
            "id": "owl-access.beta.definitions.accounts.users.validateMagicToken.output",
            "name": "validateMagicTokenOutput",
            "title": "Validate a magic token - outputs",
            "description": "Representation of output parameters for the validate magic token operation.",
            "type": "outputs",
            "additionalProperties": false,
            "schema": [
                {
                    "id": "data",
                    "name": "data",
                    "example": {
                        "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"
                    },
                    "required": true,
                    "requiredProperties": ["accessToken", "userId"],
                    "default": false,
                    "scope": "data",
                    "type": "object",
                    "description": "Access data.",
                    "properties": {
                        "accessToken": {
                            "type": "string",
                            "description": "Access token (JWT format)."
                        },
                        "userId": {
                            "type": "string",
                            "description": "User ID."
                        }
                    },
                    "in": "body",
                    "schema": {
                        "description": "Access data.",
                        "type": "object",
                        "properties": {
                            "accessToken": {
                                "type": "string",
                                "description": "Access token (JWT format)."
                            },
                            "userId": {
                                "type": "string",
                                "description": "User ID."
                            }
                        },
                        "required": ["accessToken", "userId"]
                    }
                }
            ]
        }
    },
    "errors": {
        "owl-access.beta.errors.addressAlreadyInUse": {
            "id": "owl-access.beta.errors.addressAlreadyInUse",
            "message": "Email address already used.",
            "description": "The email address {{email}} is already in use by another user account.",
            "solution": "Check which user account uses this account.",
            "default": true,
            "http": {
                "code": 400
            }
        },
        "owl-access.beta.errors.assignRole.notFound": {
            "id": "owl-access.beta.errors.assignRole.notFound",
            "message": "Role not found",
            "description": "The role {{roleId}} does not exists.",
            "solution": "Please, check the roleId.",
            "http": {
                "code": 400
            }
        },
        "owl-access.beta.errors.assignRole.accountNotFound": {
            "id": "owl-access.beta.errors.assignRole.accountNotFound",
            "message": "Accound not found",
            "description": "The account {{accountId}} does not exists.",
            "solution": "Check the accountId.",
            "http": {
                "code": 400
            }
        },
        "owl-access.beta.errors.assignRole.roleAlreadyAssigned": {
            "id": "owl-access.beta.errors.assignRole.roleAlreadyAssigned",
            "message": "Role already assigned",
            "description": "The role {{roleId}} is already assigned to the account {{accountId}}.",
            "solution": "",
            "http": {
                "code": 400
            }
        },
        "owl-access.beta.errors.createRole.operationFormatNotValid": {
            "id": "owl-access.beta.errors.createRole.operationFormatNotValid",
            "message": "Operation format not valid",
            "description": "The operation {{operationId}} format is not valid.",
            "solution": "Check the operation format.",
            "http": {
                "code": 400
            }
        },
        "owl-access.beta.errors.createRole.perimeterFormatNotValid": {
            "id": "owl-access.beta.errors.createRole.perimeterFormatNotValid",
            "message": "Perimeter format not valid",
            "description": "The perimeter {{perimeterId}} format is not valid.",
            "solution": "Check the perimeter format.",
            "http": {
                "code": 400
            }
        },
        "owl-access.beta.errors.createRole.environmentFormatNotValid": {
            "id": "owl-access.beta.errors.createRole.environmentFormatNotValid",
            "message": "Environment format not valid",
            "description": "The environment {{environmentId}} format is not valid.",
            "solution": "Check the environment format.",
            "http": {
                "code": 400
            }
        },
        "owl-access.beta.errors.deleteRole.roleInUse": {
            "id": "owl-access.beta.errors.deleteRole.roleInUse",
            "message": "Role in use",
            "description": "The role {{roleId}} is used by {{roleAssignments}} roles assignments.",
            "solution": "Delete role assigments before deleting the role.",
            "http": {
                "code": 400
            }
        },
        "owl-access.beta.errors.generateAccessToken.invalidSecret": {
            "id": "owl-access.beta.errors.generateAccessToken.invalidSecret",
            "message": "Invalid secret.",
            "description": "The secret is invalid.",
            "solution": "",
            "default": true,
            "http": {
                "code": 401
            }
        },
        "owl-access.beta.errors.generateAccessToken.accountNotFound": {
            "id": "owl-access.beta.errors.generateAccessToken.accountNotFound",
            "message": "Account not found",
            "description": "The account {{accountId}} does not exists.",
            "solution": "Check that the accountId is valid.",
            "default": true,
            "http": {
                "code": 400
            }
        },
        "owl-access.beta.errors.generateAccessToken.missingJWTSecret": {
            "id": "owl-access.beta.errors.generateAccessToken.missingJWTSecret",
            "message": "Server error",
            "description": "The JWT signature secret is not defined correctly in backend.",
            "solution": "Please, contact an administrator.",
            "default": true,
            "http": {
                "code": 500
            }
        },
        "owl-access.beta.errors.getGithubAccountId.unexpectedErrorToken": {
            "id": "owl-access.beta.errors.getGithubAccountId.unexpectedErrorToken",
            "message": "Unable to get Github access token",
            "description": "An error occured while requesting the Github access token.",
            "solution": "Please, check error details.",
            "http": {
                "code": 500
            }
        },
        "owl-access.beta.errors.getGithubAccountId.unexpectedErrorId": {
            "id": "owl-access.beta.errors.getGithubAccountId.unexpectedErrorId",
            "message": "Unable to get Github user account id",
            "description": "An error occured while requesting the Github user accound id.",
            "solution": "Please, check error details.",
            "http": {
                "code": 500
            }
        },
        "owl-access.beta.errors.getUserAccount.userNotFound": {
            "id": "owl-access.beta.errors.getUserAccount.userNotFound",
            "message": "User not found",
            "description": "No user with id {{id}} was found.",
            "solution": "Check that the identifier {{id}} is assigned to an active user.",
            "http": {
                "code": 400
            }
        },
        "owl-access.beta.errors.sendMagicToken.userNotFound": {
            "id": "owl-access.beta.errors.sendMagicToken.userNotFound",
            "message": "User not found",
            "description": "No user with email {{email}} was found.",
            "solution": "Check that the email address {{email}} is used by an active user.",
            "http": {
                "code": 400
            }
        },
        "owl-access.beta.errors.validateMagicToken.incorrectToken": {
            "id": "owl-access.beta.errors.validateMagicToken.incorrectToken",
            "message": "Incorrect magic token",
            "description": "The magic token is incorrect.",
            "solution": "Check that the magic token is the same as received by email.",
            "http": {
                "code": 400
            }
        },
        "owl-access.beta.errors.validateMagicToken.expiredToken": {
            "id": "owl-access.beta.errors.validateMagicToken.expiredToken",
            "message": "Expired magic token",
            "description": "The magic token has expired.",
            "solution": "Request a new magic token.",
            "http": {
                "code": 400
            }
        },
        "owl-access.beta.errors.validateMagicToken.tokenNotFound": {
            "id": "owl-access.beta.errors.validateMagicToken.tokenNotFound",
            "message": "Magic token not found",
            "description": "No magic token has been issued for this user.",
            "solution": "Request a new magic token.",
            "http": {
                "code": 400
            }
        },
        "owl-access.beta.errors.validateMagicToken.signatureSecretNotSet": {
            "id": "owl-access.beta.errors.validateMagicToken.signatureSecretNotSet",
            "message": "JWT Signature secret not set",
            "description": "The JWT signature secret is not set in the backend.",
            "solution": "Please, contact an administrator.",
            "http": {
                "code": 500
            }
        }
    },
    "events": {},
    "constants": {
        "$schema": "./../../../toolbox/schemas/serviceVersionIndex.json",
        "id": "owl-access",
        "version": "beta",
        "host": "localhost",
        "port": 4009,
        "trigram": "oas",
        "http": {
            "serviceId": "owl-access",
            "serviceVersionId": "beta",
            "domain": "owl.manager"
        },
        "sourceRepository": {
            "type": "git",
            "url": "",
            "localPath": "owl-access"
        }
    },
    "sourceRepository": {
        "type": "git",
        "url": "",
        "localPath": "owl-access"
    }
}
