This documentation is currently under development. Certain sections are not yet complete and will be added shortly.
For the complete documentation index, see llms.txt. This page is also available as Markdown.

Actito

Get the Actito configuration

get
/api/{tenantId}/admin/extensions/actito

Returns the current Actito configuration for this tenant. The API key is never returned; the response contains hasApiKey instead. Returns 404 when Actito is not configured.

Required scopes
This endpoint requires the following scopes:
Authorizations
OAuth2implicitRequired
Authorization URL:
Path parameters
tenantIdstringRequired
Responses
200

Configuration returned.

The tenant's Actito connection, without the API key.

serverstring · uriRequired

Root URL of the Actito API domain the entity lives on.

entitystring · min: 1Required

Name of the Actito entity the integration works in.

profileTableNamestring · min: 1Required

Name of the Actito profile table the holders' profiles are read from.

actitoExternalIdentifierstring · min: 1Required

Attribute of the profile table matched against the pass identifier Neo.Extensions.Actito.Controllers.ActitoConfigurationResponse.TwcExternalIdentifier.

twcExternalIdentifierstring · min: 1Required

Name of the pass identifier matched against Neo.Extensions.Actito.Controllers.ActitoConfigurationResponse.ActitoExternalIdentifier.

hasApiKeybooleanRequired

Whether an API key is stored. When true, a PUT may omit apiKey to keep it.

get/api/{tenantId}/admin/extensions/actito
GET /api/{tenantId}/admin/extensions/actito HTTP/1.1
Host: app.neostore.cloud
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
{
  "server": "https://example.com",
  "entity": "text",
  "profileTableName": "text",
  "actitoExternalIdentifier": "text",
  "twcExternalIdentifier": "text",
  "hasApiKey": true
}

Set Actito configuration

put
/api/{tenantId}/admin/extensions/actito

Creates or replaces the Actito configuration. Omit apiKey to keep the saved API key. Returns 400 if the API key is missing and none was saved before.

Required scopes
This endpoint requires the following scopes:
Authorizations
OAuth2implicitRequired
Authorization URL:
Path parameters
tenantIdstringRequired
Body

Connection to the tenant's Actito entity, and how an Actito profile is matched to the holder's passes.

serverstring · uriRequired

Root URL of the Actito API domain the entity lives on, e.g. https://api3.actito.com.

entitystring · min: 1Required

Name of the Actito entity that holds the profile table, and in which the integration keeps its wallet and pass template tables, custom actions and webhook subscriptions.

profileTableNamestring · min: 1Required

Name of the Actito profile table the holders' profiles are read from.

actitoExternalIdentifierstring · min: 1Required

Attribute of the profile table that carries the holder identifier shared with The Wallet Crew, e.g. customerId. Its value is matched against the pass identifier named by Neo.Extensions.Actito.Controllers.SetActitoRequest.TwcExternalIdentifier.

twcExternalIdentifierstring · min: 1Required

Name of the pass identifier matched against Neo.Extensions.Actito.Controllers.SetActitoRequest.ActitoExternalIdentifier, e.g. y2.customerId. A pass without this identifier is never linked to an Actito profile.

apiKeystring · nullableOptional

API key generated in the "Manage API users" page of the Actito portal. Never returned.

Responses
204

Configuration saved.

No content

put/api/{tenantId}/admin/extensions/actito
PUT /api/{tenantId}/admin/extensions/actito HTTP/1.1
Host: app.neostore.cloud
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 153

{
  "server": "https://example.com",
  "entity": "text",
  "profileTableName": "text",
  "actitoExternalIdentifier": "text",
  "twcExternalIdentifier": "text",
  "apiKey": null
}

No content

Write a value on a holder's passes from an Actito scenario

post
/api/{tenantId}/webhooks/listeners/actito/custom-actions/updatePass

Called by Actito when the integration's custom action runs. Finds every pass whose twcExternalIdentifier identifier equals the profile's actitoExternalIdentifier attribute, sets the actito_{key} additional data to the action's value, saves each pass and pushes it to the wallets, then posts to the action's notifyOK callback.

A 4xx means the message cannot be processed as configured, so Actito stops retrying it; a 5xx is retried.

Required scopes
This endpoint requires the following scopes:
Authorizations
OAuth2implicitRequired
Authorization URL:
Path parameters
tenantIdstringRequired
Body
anyOptional
Responses
200

Passes updated and Actito notified; also when no pass matches the holder.

No content

post/api/{tenantId}/webhooks/listeners/actito/custom-actions/updatePass
POST /api/{tenantId}/webhooks/listeners/actito/custom-actions/updatePass HTTP/1.1
Host: app.neostore.cloud
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*

No content

Link a holder's passes to their Actito profile

post
/api/{tenantId}/webhooks/listeners/actito/profile/{eventType}

Called by Actito when a profile is created, or when its actitoExternalIdentifier attribute changes. Reads the profile from the profile table, finds the passes whose twcExternalIdentifier identifier equals that attribute, and records in the integration's wallet table in Actito the holder's most recently created Apple pass installed on a device and most recently created Google pass, each linked to the profile. No pass is changed.

The same event type, operation and profile received again within 2 hours answers 208 and is not processed again.

Required scopes
This endpoint requires the following scopes:
Authorizations
OAuth2implicitRequired
Authorization URL:
Path parameters
eventTypestring · enumRequired

Profile table event Actito reports. The integration subscribes to both, the update one only for changes of the profile attribute named by actitoExternalIdentifier.

Possible values:
tenantIdstringRequired
Body

Envelope of an Actito profile webhook.

eventTypestringOptional

Event type as Actito names it.

operationstringOptional

Operation name as Actito names it. With the route's event type and the profile, identifies the event.

Responses
200

Event processed; also when no pass matches the profile.

No content

post/api/{tenantId}/webhooks/listeners/actito/profile/{eventType}
POST /api/{tenantId}/webhooks/listeners/actito/profile/{eventType} HTTP/1.1
Host: app.neostore.cloud
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 62

{
  "eventType": "text",
  "operation": "text",
  "data": {
    "profileId": 1
  }
}

No content

Last updated