{
  "opencollection": "1.0.0",
  "info": {
    "name": "Passage by 1Password Management API",
    "version": "1.0"
  },
  "request": {
    "auth": {
      "type": "bearer",
      "token": "{{bearerToken}}"
    }
  },
  "items": [
    {
      "info": {
        "name": "Users",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "List users",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.passage.id/v1/apps/{{app_id}}/users"
          },
          "docs": "Returns a paginated, filterable list of users for the app."
        },
        {
          "info": {
            "name": "Create a user",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.passage.id/v1/apps/{{app_id}}/users",
            "body": {
              "type": "json",
              "data": "{\n  \"email\": \"user@example.com\",\n  \"phone\": \"\",\n  \"user_metadata\": {}\n}"
            }
          },
          "docs": "Creates a user from email and/or phone. Either email or phone is required."
        },
        {
          "info": {
            "name": "Get a user",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.passage.id/v1/apps/{{app_id}}/users/{{user_id}}"
          },
          "docs": "Returns a single user's full record."
        },
        {
          "info": {
            "name": "Update a user",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://api.passage.id/v1/apps/{{app_id}}/users/{{user_id}}",
            "body": {
              "type": "json",
              "data": "{\n  \"email\": \"\",\n  \"phone\": \"\",\n  \"user_metadata\": {}\n}"
            }
          },
          "docs": "Updates a user's email, phone, and/or user_metadata."
        },
        {
          "info": {
            "name": "Delete a user",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://api.passage.id/v1/apps/{{app_id}}/users/{{user_id}}"
          },
          "docs": "Permanently deletes a user and their credentials."
        },
        {
          "info": {
            "name": "Activate a user",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://api.passage.id/v1/apps/{{app_id}}/users/{{user_id}}/activate"
          },
          "docs": "Activates a user, allowing them to authenticate."
        },
        {
          "info": {
            "name": "Deactivate a user",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://api.passage.id/v1/apps/{{app_id}}/users/{{user_id}}/deactivate"
          },
          "docs": "Deactivates a user, preventing them from authenticating."
        }
      ]
    },
    {
      "info": {
        "name": "Devices",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "List a user's devices",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.passage.id/v1/apps/{{app_id}}/users/{{user_id}}/devices"
          },
          "docs": "Returns the WebAuthn (passkey) devices registered to a user."
        },
        {
          "info": {
            "name": "Delete a user's device",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://api.passage.id/v1/apps/{{app_id}}/users/{{user_id}}/devices/{{device_id}}"
          },
          "docs": "Removes a single WebAuthn (passkey) device from a user."
        }
      ]
    },
    {
      "info": {
        "name": "Tokens",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Revoke a user's refresh tokens",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://api.passage.id/v1/apps/{{app_id}}/users/{{user_id}}/tokens"
          },
          "docs": "Revokes all of a user's active refresh tokens."
        }
      ]
    },
    {
      "info": {
        "name": "Magic Links",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Create a magic link",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.passage.id/v1/apps/{{app_id}}/magic-links",
            "body": {
              "type": "json",
              "data": "{\n  \"email\": \"user@example.com\",\n  \"channel\": \"email\",\n  \"send\": true,\n  \"type\": \"login\",\n  \"redirect_url\": \"/\",\n  \"ttl\": 300\n}"
            }
          },
          "docs": "Creates a magic link for login or identifier verification."
        }
      ]
    }
  ]
}
