BokaMera.API.Host

<back to all web services

ApiKeyQuery

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin
The following routes are available for this service:
GET/apikeysList the API keys for the logged in user's companyReturns the API keys belonging to the company of the currently logged in user. A company administrator only ever sees the keys for their own company. Use the returned ApiKey value as the x-api-key header when calling the API (for example from an MCP server).
ApiKeyQuery Parameters:
NameParameterData TypeRequiredDescription
CompanyIdqueryGuid?NoThe company to list API keys for. Defaults to the logged in user's company. Only a SuperAdmin may specify a company other than their own; for other roles this value is ignored.
ActiveOnlyquerybooleanNoIf true, only return keys that are active (not cancelled and not expired). Default is false (return all).
ApiKeyQueryResponse Parameters:
NameParameterData TypeRequiredDescription
ApiKeysformList<ApiKeyResponse>YesThe API keys for the company
ResponseStatusformResponseStatusYes
ApiKeyResponse Parameters:
NameParameterData TypeRequiredDescription
CompanyIdformGuidNoThe company the API key belongs to
ApiKeyformGuidNoThe API key value to send in the x-api-key header
ActiveformboolNoWhether the key is active
CreatedDateformDateTimeNoWhen the key was created
ExpiryDateformDateTime?NoWhen the key expires, if ever
ContactEmailformstringYesContact email registered for the key
NotesformstringYesFree text notes for the key
AllowedIpAddressesformstringYesComma separated list of IP addresses the key is restricted to, if any

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /apikeys HTTP/1.1 
Host: testapi.bokamera.se 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	ApiKeys: 
	[
		{
			Active: False,
			ExpiryDate: "0001-01-01T00:00:00",
			ContactEmail: String,
			Notes: String,
			AllowedIpAddresses: String
		}
	],
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}