Skip to main content

Platform Onboarding

Welcome to Dataspine! This guide will help you get your organization set up on the platform and ready to build your first data products.

Prerequisites

Before starting, ensure you have:

  • Administrative access to your organization's cloud environment
  • Network connectivity to European data centers
  • Basic understanding of your data architecture and requirements
  • Team roles defined (data engineers, platform admins, consumers)

Step 1: Account Setup

Create Your Organization

  1. Sign up at app.dataspine.io
  2. Choose your region (must be within EU for data sovereignty)
  3. Configure your organization settings
# Using the CLI to create an organization
dataspine org create \
--name "acme-corp" \
--region "eu-central-1" \
--admin "admin@acme-corp.com"

Integrate with your existing identity provider:

# sso-config.yaml
identity_provider:
type: "saml2"
issuer: "https://acme-corp.okta.com"
sso_url: "https://acme-corp.okta.com/app/dataspine/sso/saml"
certificate: |
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
dataspine org configure-sso --config sso-config.yaml

Step 2: Environment Setup

Create Environments

Set up separate environments for development, staging, and production:

# Development environment
dataspine env create \
--name "development" \
--type "dev" \
--auto-scale "false"

# Staging environment
dataspine env create \
--name "staging" \
--type "staging" \
--auto-scale "true"

# Production environment
dataspine env create \
--name "production" \
--type "prod" \
--auto-scale "true" \
--high-availability "true"

Configure Network Access

Set up VPC peering or private links to your existing infrastructure:

# network-config.yaml
network:
vpc_id: "vpc-12345678"
subnets:
- "subnet-12345678"
- "subnet-87654321"
security_groups:
- "sg-dataspine-access"

private_link:
enabled: true
service_name: "com.amazonaws.vpce.eu-central-1.vpce-svc-12345678"

Step 3: Data Source Integration

Inventory Your Data Sources

Identify and catalog your existing data sources:

Source TypeSystemDatabase/TopicTables/StreamsOwner
PostgreSQLCustomer DBcustomer_dbcustomers, ordersCustomer Team
KafkaEvent Streameventsuser-actions, paymentsPlatform Team
REST APICRM System-/api/contactsSales Team

Configure Source Connections

# data-sources.yaml
sources:
- name: "customer-database"
type: "postgresql"
config:
host: "db.internal.acme-corp.com"
port: 5432
database: "customer_db"
ssl_mode: "require"
credentials:
username: "${DB_USER}"
password: "${DB_PASSWORD}"

- name: "event-stream"
type: "kafka"
config:
bootstrap_servers: "kafka.internal.acme-corp.com:9092"
security_protocol: "SASL_SSL"
credentials:
sasl_mechanism: "PLAIN"
sasl_username: "${KAFKA_USER}"
sasl_password: "${KAFKA_PASSWORD}"
dataspine sources configure --config data-sources.yaml

Step 4: Team Access Management

Define Roles and Permissions

Set up role-based access control:

# rbac-config.yaml
roles:
- name: "data-engineer"
permissions:
- "data-products:create"
- "data-products:deploy"
- "sources:read"
- "environments:dev:full-access"

- name: "data-consumer"
permissions:
- "data-products:read"
- "apis:query"
- "environments:prod:read-only"

- name: "platform-admin"
permissions:
- "*:*"

assignments:
- user: "john.doe@acme-corp.com"
roles: ["data-engineer"]
- user: "jane.smith@acme-corp.com"
roles: ["data-consumer"]
- user: "admin@acme-corp.com"
roles: ["platform-admin"]
dataspine rbac configure --config rbac-config.yaml

Invite Team Members

# Invite team members
dataspine users invite \
--email "john.doe@acme-corp.com" \
--role "data-engineer" \
--welcome-message "Welcome to our data platform!"

Step 5: Development Environment

Install the CLI

Download the latest release archive from the GitHub Releases page and run the bundled installer:

# macOS / Linux — extract and install both dataspine and spinec
tar xzf dataspine-*.tar.gz
cd dataspine
./install.sh # installs to /usr/local/dataspine, symlinks in /usr/local/bin

# Windows — extract the zip and add the directory to your PATH

The archive contains two binaries: dataspine (the unified CLI) and spinec (the Spine language compiler / LSP server).

Configure Local Development

# Authenticate with your organization
dataspine login

# Select your default environment
# dataspine profile list # see configured profiles

# Verify setup
dataspine status

IDE Setup

Install the VS Code extension for Dataspine:

  1. Open VS Code
  2. Go to Extensions (Ctrl+Shift+X)
  3. Search for "Dataspine"
  4. Install the official extension

Step 6: Governance Configuration

Set Up Data Governance Policies

# governance-policies.yaml
policies:
data_classification:
- pattern: "*.customer.*"
classification: "PII"
retention_days: 2555 # 7 years

- pattern: "*.financial.*"
classification: "SENSITIVE"
retention_days: 3650 # 10 years

access_control:
- classification: "PII"
requires: ["data-privacy-training"]
max_export_rows: 1000

- classification: "SENSITIVE"
requires: ["financial-clearance"]
time_restrictions: "business-hours"

quality_requirements:
- schema_validation: "strict"
- freshness_sla: "5 minutes"
- completeness_threshold: 0.95
dataspine governance configure --config governance-policies.yaml

Configure Monitoring and Alerting

# monitoring-config.yaml
monitoring:
alerts:
- name: "data-freshness"
condition: "data_age > 5 minutes"
severity: "warning"
channels: ["slack", "email"]

- name: "quality-degradation"
condition: "quality_score < 0.9"
severity: "critical"
channels: ["pagerduty"]

dashboards:
- name: "platform-overview"
widgets:
- type: "data-product-health"
- type: "ingestion-rates"
- type: "api-latency"

Step 7: Validation

Health Check

Verify your platform setup:

# Run comprehensive health check
dataspine health-check --verbose

# Test data source connectivity
dataspine sources test-connection --all

# Validate governance policies
dataspine governance validate

# Check environment status
dataspine env status --all

Create a Test Data Product

Create a simple data product to validate the setup:

# Initialize a new data product
dataspine data-product init \
--name "hello-world" \
--template "simple-stream"

# Deploy to development
dataspine deploy --environment development

Step 8: Documentation and Training

Set Up Team Documentation

Create internal documentation for your team:

# Acme Corp Data Platform Guide

## Quick Links
- [Platform Dashboard](https://acme-corp.dataspine.io)
- [Data Catalog](https://acme-corp.dataspine.io/catalog)
- [API Explorer](https://acme-corp.dataspine.io/apis)

## Getting Help
- Slack: #data-platform
- Email: data-platform@acme-corp.com
- Documentation: [Internal Wiki](https://wiki.acme-corp.com/data-platform)

Schedule Training Sessions

  1. Platform Overview (All team members)
  2. Data Engineering Workshop (Technical teams)
  3. API Consumer Training (Application developers)
  4. Governance and Compliance (Data stewards)

Next Steps

Now that your platform is set up, you're ready to:

  1. Create your first data product — Spine-based tutorial
  2. Quick Start — validate and compile .spine sources
  3. Monitoring and data sources — use your organization’s runbooks; dedicated observability and connector docs are not published in this site yet

Need Help?

Troubleshooting Common Issues

Network Connectivity

# Test network connectivity
dataspine network test --target eu-central-1.dataspine.io

# Check firewall rules
dataspine network check-firewall

Authentication Issues

# Clear authentication cache
dataspine logout
dataspine login

# Verify SSO configuration
dataspine show-token # verify token

Permission Errors

# Check your current permissions
dataspine auth whoami

# Request additional permissions
dataspine auth request-access --resource "data-products" --action "create"