Skip to content

Automating Onboarding

It’s possible to onboard tenants into Attic outside of the partner portal.
This is done by:
1. Pre-consenting the Attic app in the client tenant.
2. Creating a new subscription with the correct configuration.

When these steps are completed, the customer solution is automatically onboarded.

Note: Automated onboarding is only available to partners that have a custom app for read-only and read/write connections.
If you want to enable this, contact us so we can help you set up your custom Attic app.


Prerequisites

Before starting, make sure you have the required information.
The API will validate your input and may request additional fields depending on the subscription type.

For example, onboarding an Attic Premium subscription requires:

  • Tenant ID
  • OnMicrosoft domain
  • Access type (rw or r)
  • Display name (as shown inside the partner portal)

If you want to onboard a different solution and wonder which config values are required send a post to the /subscriptions endpoint with an empty configuration object. Our framework will determine the correct input parameters for automated onboarding.


Step 1: Retrieve subscription types

Each subscription type has a unique GUID. Retrieve the available plans for your partner account with:

curl https://partner-api.zolder.io/subscription_plans

Make sure to select one of the sales_items ID's.


Step 2: Create a new subscription

Use the ID you retrieved above to create a new client subscription:

curl -i -X POST   https://partner-api.zolder.io/subscription_plans   -H 'Authorization: Bearer <YOUR_JWT_HERE>'   -H 'Content-Type: application/json'   -d '{
    "id": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
    "configuration": {
      "access": "RW",
      "customer_domain": "yourtenant.onmicrosoft.com",
      "tenant_id": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
      "name": "my demo client"
    }
  }'

If successful, the API returns:

{
  "message": "string",
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "onboarded": true
}

Validate whether the onboarded boolean is true, to make sure onboarding is successful.


Step 3: Handle additional requirements

If the required information changes, the API will respond with an error message describing the additional fields needed. Update your request accordingly and retry.