Search K
Appearance
Appearance
Overview Use this guide to register a BlueBeam app and connect it to your system as a "Third Party (BlueBeam)" OAuth account. The app enables end-users to:
- Access BlueBeam Cloud projects and documents
- Read/write BlueBeam Studio sessions and files
- Manage PDF markups and annotations
- Access BlueBeam Gateway for on-premise integrations
- Integrate with BlueBeam Revu document workflows
This document provides the exact permissions to grant, the redirect/authorization URLs to use, and the values to enter in your application. All values below use placeholders—replace them with your own.
The BlueBeam account setup involves an OAuth flow where part of the process happens in the user's browser and part happens on the MinuteView server itself. After the user authenticates with BlueBeam and is redirected back to MinuteView, the server exchanges the authorization code for a token by calling BlueBeam's API directly. This means the MinuteView server must have outbound internet access to the following domains.
The following domains must be accessible via HTTPS (port 443) from the server where MinuteView is installed. Whitelist the domain(s) that match your BlueBeam region:
| Domain | Region | Purpose |
|---|---|---|
api.bluebeam.com | US | OAuth token exchange, token refresh, and BlueBeam API calls |
api.bluebeamstudio.com.au | Australia | OAuth token exchange, token refresh, and BlueBeam API calls |
api.bluebeamstudio.eu | Europe | OAuth token exchange, token refresh, and BlueBeam API calls |
authserver.bluebeam.com | Legacy (all regions) | Token exchange for deprecated BlueBeam OAuth v1 |
Server Access Required
These domains must be reachable from the server, not just from the user's PC. The user's browser handles the initial login redirect, but the token exchange and all subsequent API calls are made server-side. If the server cannot reach these domains, the account setup will fail with a connection error even though the BlueBeam login page loaded successfully in the browser.
https://developer.bluebeam.com/MinuteView Integration.https://your-domain/MinuteView/PageGeneral/ServiceCallback.aspxFrom the application's Details page:
YOUR-BLUEBEAM-CLIENT-IDYOUR-BLUEBEAM-CLIENT-SECRETStore the client secret securely as it contains sensitive authentication information.
BlueBeam uses scope-based permissions for API access:
read - Read access to user's BlueBeam datawrite - Write access to user's BlueBeam datadelete - Delete access to user's BlueBeam dataprojects - Access to BlueBeam Cloud projectssessions - Access to BlueBeam Studio sessionsdocuments - Access to document management featuresmarkups - Access to PDF markup and annotation featuresgateway - Access to BlueBeam Gateway integrationsprofile - Read user profile informationemail - Access to user's email addressAuthorize endpointhttps://api.bluebeam.com/oauth2/authorize
Token endpointhttps://api.bluebeam.com/oauth2/token
User Info endpointhttps://api.bluebeam.com/oauth2/userinfo
Use the Authorization Code flow:
GET https://api.bluebeam.com/oauth2/authorize
?response_type=code
&client_id={ClientId}
&redirect_uri={UrlEncodedCallbackUrl}
&scope={SpaceSeparatedScopes}
&state={RandomStateParameter}Example scopes: read write projects documents profile email
When your app receives the code at the callback:
POST to the token endpoint with:
grant_type=authorization_codeclient_id={ClientId}client_secret={ClientSecret}code={authorization_code_from_callback}redirect_uri={exact_same_redirect_uri}You'll receive:
access_token (use for API calls)refresh_token (use to get new access tokens)expires_in (token lifetime in seconds)token_type (typically "Bearer")Sign in with a user who has access to BlueBeam services.
Call sample endpoints to validate each capability:
GET https://api.bluebeam.com/v1/user/meGET https://api.bluebeam.com/v1/projectsGET https://api.bluebeam.com/v1/sessionsGET https://api.bluebeam.com/v1/projects/{project_id}/documentsGET https://api.bluebeam.com/v1/documents/{document_id}/markupsConfirm refresh token works and tokens are stored securely.
Test file upload/download operations if applicable.
BlueBeam APIs have rate limits to ensure service stability:
Monitor response headers for rate limit information and implement appropriate backoff strategies.
BlueBeam Studio sessions allow real-time collaboration:
POST /v1/sessionsPOST /v1/sessions/{session_id}/joinGET /v1/sessions/{session_id}/participantsHandle PDF annotations and markups:
GET /v1/documents/{document_id}/markupsPOST /v1/documents/{document_id}/markupsPUT /v1/markups/{markup_id}For on-premise BlueBeam Gateway connections:
Replace placeholders and URL-encode parameters appropriately.
Authorization URL:
https://api.bluebeam.com/oauth2/authorize
?response_type=code
&client_id={ClientId}
&redirect_uri={UrlEncodedCallbackUrl}
&scope=read%20write%20projects%20documents%20profile%20email
&state={RandomState}Token Exchange:
POST https://api.bluebeam.com/oauth2/token
Content-Type: application/x-www-form-urlencoded
grant_type=authorization_code
&client_id={ClientId}
&client_secret={ClientSecret}
&code={CodeFromCallback}
&redirect_uri={ExactSameCallbackUrl}Token Refresh:
POST https://api.bluebeam.com/oauth2/token
Content-Type: application/x-www-form-urlencoded
grant_type=refresh_token
&client_id={ClientId}
&client_secret={ClientSecret}
&refresh_token={RefreshToken}https://api.bluebeam.com/v1/user/mehttps://api.bluebeam.com/v1/projectshttps://api.bluebeam.com/v1/projects/{project_id}/documentshttps://api.bluebeam.com/v1/documents/{document_id}https://api.bluebeam.com/v1/documents/{document_id}/markupshttps://api.bluebeam.com/v1/sessionshttps://api.bluebeam.com/v1/sessions/{session_id}This configuration enables integration with BlueBeam Cloud, Studio sessions, PDF markup management, and Gateway connections for comprehensive construction document collaboration workflows.