Skip to main content
GET
The API key exchange endpoint authenticates your Portal.io credentials and returns a meta.apiKey value you must include in the X-MSS-API-USERKEY header on all subsequent requests. This is the entry point for every integration: call it once to obtain the key, then use that key to sign all other requests.
For the initial exchange, X-MSS-API-USERKEY must be an empty string and is excluded from the HMAC canonical message. The canonical message is: [HTTP method][base URL without query params][timestamp] — no content-type (GET request) and no user key. See the signing guide for a worked example.

Headers

Accept
enum<string>
required

Accept Header

Available options:
application/json
X-MSS-API-APPID
string
required

Application Id

X-MSS-CUSTOM-DATE
string
required

A date timestamp of the request

X-MSS-SIGNATURE
string
required

A signature for the request

X-MSS-API-USERKEY
string
required

User API Key

Query Parameters

UserName
string
required

user email address

Maximum string length: 256
Password
string<password>
required

user password

Response

Success

AuthenticateResponse

userId
string
sessionId
string
userName
string
displayName
string
referrerUrl
string
bearerToken
string
refreshToken
string
refreshTokenExpiry
string<date-time>
profileUrl
string
roles
string[]
permissions
string[]
authProvider
string
responseStatus
ResponseStatus · object

ResponseStatus

meta
Dictionary<String,String> · object

Dictionary<String,String>