Elements Manual
Elements 3 Manual
Elements 3 Manual
  • Welcome 👋
  • QUICK START
    • Elements in Five Minutes or Less
    • Accessing the Web UI (CRM)
    • Creating A User
  • General
    • General Concepts
    • N-Tier Architecture
    • Security Model
  • Core Features
    • Core API Overview
    • Sessions
    • Applications
    • Users and Profiles
    • Digital Goods
    • Progress and Missions
    • Leaderboards
    • Matchmaking
    • Followers
    • Friends
    • Reward Issuance
    • Save Data
    • Schemas and Metadata Specifications
    • Queries
      • Base Query Syntax
      • Boolean Queries
      • Object Graph Navigation
      • Advanced Operators
        • .ref
        • .name
    • Custom Code
      • Element Structure
      • RESTful APIs
      • Websockets
    • Auth Schemes
      • OIDC
      • OAuth2
  • Web 3
    • Omni Chain Support
    • Vaults
    • Wallets
    • Smart Contracts
      • Smart Contracts: Ethereum
      • Smart Contracts: Flow
      • Smart Contracts: Solana
      • Smart Contracts: Neo
  • CONFIGURATION
    • Direct Database Access and Batch Configuration
    • Batch Samples
      • Item Upload Bash Script Sample
      • Mission Upload Bash Script Sample
  • RESTful APIs
    • Swagger and Swagger UI
    • API Specification
      • /application
      • /application/configuration
      • /auth
      • /auth_scheme
        • /custom
        • /oauth2
        • /oidc
      • /blockchain
      • /followee
      • /follower
      • /friend
      • /google
      • /index
      • /inventory
      • /item
      • /large_object
      • /leaderboard
      • /rank
      • /score
      • /match
      • /mission
      • /progress
      • /reward_issuance
      • /schedule
      • /notification
      • /profile
      • /save_data
      • /metadata_spec
      • /mock_session
      • /session
      • /health
      • /version
      • /signup
      • /user
    • Javadocs
  • Releases
    • 3.1 Release Notes
Powered by GitBook
On this page
  1. RESTful APIs
  2. API Specification
  3. /auth_scheme

/custom

Previous/auth_schemeNext/oauth2

Last updated 1 month ago

Gets a specific Auth Scheme

get

Gets a specific Auth Scheme by the authSchemeId.

Authorizations
Path parameters
authSchemeIdanyRequired
Responses
400Error
application/json
401Error
application/json
403Error
application/json
404Error
application/json
409Error
application/json
500Error
application/json
501Error
application/json
503Error
application/json
default
default response
application/json
get
GET /api/rest/auth_scheme/custom/{authSchemeId} HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Accept: */*
{
  "code": "text",
  "message": "text"
}

Deletes an Auth Scheme

delete

Deletes an Auth Scheme with the specified id.

Authorizations
Path parameters
authSchemeIdanyRequired
Responses
400Error
application/json
401Error
application/json
403Error
application/json
404Error
application/json
409Error
application/json
500Error
application/json
501Error
application/json
503Error
application/json
default
default response
application/json
delete
DELETE /api/rest/auth_scheme/custom/{authSchemeId} HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Accept: */*
{
  "code": "text",
  "message": "text"
}
  • GETLists all auth schemes in the system
  • POSTCreates a new Auth Scheme
  • GETGets a specific Auth Scheme
  • PUTUpdates an Auth Scheme
  • DELETEDeletes an Auth Scheme

Lists all auth schemes in the system

get

Requires SUPERUSER access. Gets a pagination of Auth Schemes for the given query.

Authorizations
Query parameters
offsetanyOptionalDefault: 0
countanyOptionalDefault: 20
tagsanyOptional
Responses
400Error
application/json
401Error
application/json
403Error
application/json
404Error
application/json
409Error
application/json
500Error
application/json
501Error
application/json
503Error
application/json
default
default response
application/json
get
GET /api/rest/auth_scheme/custom HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Accept: */*
{
  "code": "text",
  "message": "text"
}

Creates a new Auth Scheme

post

Creates a new Auth Scheme, from the data in the given auth scheme request

Authorizations
Body

Represents a request to create an Auth Scheme for an Application.

audienceanyRequired

The JWT audience for the scheme. Must be unique.

publicKeyanyOptional

The Base64 public key that was either given or generated during creation. See https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/security/spec/X509EncodedKeySpec.html for details on the specifics of the format.

Pattern: ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$
algorithmundefined · enumRequiredPossible values:
userLevelundefined · enumRequired

The highest permitted user level this particular scheme will authorize.

Possible values:
tagsanyRequired

A list of tags used to index the auth scheme.

allowedIssuersanyRequired

The list of issuers allowed to use this scheme.

Responses
400Error
application/json
401Error
application/json
403Error
application/json
404Error
application/json
409Error
application/json
500Error
application/json
501Error
application/json
503Error
application/json
default
default response
application/json
post
POST /api/rest/auth_scheme/custom HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Content-Type: */*
Accept: */*
Content-Length: 113

{
  "audience": null,
  "publicKey": null,
  "algorithm": "RSA_256",
  "userLevel": "UNPRIVILEGED",
  "tags": [],
  "allowedIssuers": []
}
{
  "code": "text",
  "message": "text"
}

Updates an Auth Scheme

put

Updates an Auth Scheme with the specified data in the auth scheme request.

Authorizations
Path parameters
authSchemeIdanyRequired
Body

Represents a request to update an Auth Scheme for an Application.

audienceanyRequired

The JWT audience for the scheme. Must be unique.

regenerateanyOptional

If set to true, Elements will regenerate the key and pubKey must be null or omitted

publicKeyanyOptional

The Base64 public key that was either given or generated during creation. See https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/security/spec/X509EncodedKeySpec.html for details on the specifics of the format.

Pattern: ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$
algorithmundefined · enumRequired

The algorithm that Elements will use with the supplied key.

Possible values:
userLevelundefined · enumRequired

The highest permitted user level this particular scheme will authorize.

Possible values:
tagsanyRequired

The list of tags for tagging the auth scheme.

allowedIssuersanyRequired

The list of issuers allowed to use this scheme.

Responses
400Error
application/json
401Error
application/json
403Error
application/json
404Error
application/json
409Error
application/json
500Error
application/json
501Error
application/json
503Error
application/json
default
default response
application/json
put
PUT /api/rest/auth_scheme/custom/{authSchemeId} HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Content-Type: */*
Accept: */*
Content-Length: 131

{
  "audience": null,
  "regenerate": null,
  "publicKey": null,
  "algorithm": "RSA_256",
  "userLevel": "UNPRIVILEGED",
  "tags": [],
  "allowedIssuers": []
}
{
  "code": "text",
  "message": "text"
}