{
  "opencollection": "1.0.0",
  "info": {
    "name": "Opal access-rules requests API",
    "version": "1.0"
  },
  "items": [
    {
      "info": {
        "name": "requests",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Get requests",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.opal.dev/v1/requests",
            "params": [
              {
                "name": "start_date_filter",
                "value": "",
                "type": "query",
                "description": "A start date filter for the events."
              },
              {
                "name": "end_date_filter",
                "value": "",
                "type": "query",
                "description": "An end date filter for the events."
              },
              {
                "name": "requester_id",
                "value": "37cb7e41-12ba-46da-92ff-030abe0450b1",
                "type": "query",
                "description": "Filter requests by their requester ID."
              },
              {
                "name": "target_user_id",
                "value": "37cb7e41-12ba-46da-92ff-030abe0450b1",
                "type": "query",
                "description": "Filter requests by their target user ID."
              },
              {
                "name": "resource_id",
                "value": "37cb7e41-12ba-46da-92ff-030abe0450b1",
                "type": "query",
                "description": "Filter requests by the resource ID that was requested."
              },
              {
                "name": "group_id",
                "value": "37cb7e41-12ba-46da-92ff-030abe0450b1",
                "type": "query",
                "description": "Filter requests by the group ID that was requested."
              },
              {
                "name": "cursor",
                "value": "cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
                "type": "query",
                "description": "The pagination cursor value."
              },
              {
                "name": "page_size",
                "value": "200",
                "type": "query",
                "description": "Number of results to return per page. Default is 200."
              },
              {
                "name": "show_pending_only",
                "value": "",
                "type": "query",
                "description": "Boolean toggle for if it should only show pending requests."
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Returns a list of requests for your organization that is visible by the admin."
        },
        {
          "info": {
            "name": "createRequest",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.opal.dev/v1/requests",
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Create an access request"
        },
        {
          "info": {
            "name": "Get requests via Relay",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.opal.dev/v1/requests/relay",
            "params": [
              {
                "name": "first",
                "value": "10",
                "type": "query",
                "description": "Number of results to return after the cursor. Use either first/after or last/before, not both."
              },
              {
                "name": "after",
                "value": "Y3Vyc29yOnYyOpK5MjAyMS0wMS0wN1QwNzo0MToyNy4xMTlaFjYwZmM2YmJlZjk4YzE1N2ZhNjFhYjk4Nw==",
                "type": "query",
                "description": "Cursor to fetch results after. Used with 'first' for forward pagination."
              },
              {
                "name": "last",
                "value": "10",
                "type": "query",
                "description": "Number of results to return before the cursor. Use either first/after or last/before, not both."
              },
              {
                "name": "before",
                "value": "Y3Vyc29yOnYyOpK5MjAyMS0wMS0wN1QwNzo0MToyNy4xMTlaFjYwZmM2YmJlZjk4YzE1N2ZhNjFhYjk4Nw==",
                "type": "query",
                "description": "Cursor to fetch results before. Used with 'last' for backward pagination."
              },
              {
                "name": "status",
                "value": "PENDING",
                "type": "query",
                "description": "Filter requests by their status."
              },
              {
                "name": "to",
                "value": "37cb7e41-12ba-46da-92ff-030abe0450b1",
                "type": "query",
                "description": "Filter requests assigned to a specific user ID."
              },
              {
                "name": "from",
                "value": "37cb7e41-12ba-46da-92ff-030abe0450b1",
                "type": "query",
                "description": "Filter requests made by a specific user ID."
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Returns a paginated list of requests using Relay-style cursor pagination."
        },
        {
          "info": {
            "name": "Get request by ID",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.opal.dev/v1/requests/:id",
            "params": [
              {
                "name": "id",
                "value": "4baf8423-db0a-4037-a4cf-f79c60cb67a5",
                "type": "path",
                "description": "The ID of the request."
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Returns a request by ID."
        },
        {
          "info": {
            "name": "approveRequest",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.opal.dev/v1/requests/:id/approve",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "The ID of the request to approve"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Approve an access request"
        },
        {
          "info": {
            "name": "denyRequest",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.opal.dev/v1/requests/:id/deny",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "The ID of the request to deny"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Deny an access request"
        },
        {
          "info": {
            "name": "getRequestComments",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.opal.dev/v1/requests/:id/comments",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "The ID of the request to get comments for"
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Returns a list of comments for a specific request."
        },
        {
          "info": {
            "name": "createRequestComment",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.opal.dev/v1/requests/:id/comments",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "The ID of the request to comment on"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Comment on an access request"
        }
      ]
    }
  ],
  "bundled": true
}