Skip to main content

Python package to manage integrations with Anaplan.

Project description

Simple Anaplan Connector Package

Introduction

This is a simple Anaplan connector intended to be used as a quick and easy way to mainly integrate with Anaplan using Python. This package does not include all API options. It uses the main calls to push data to anaplan via files, call a process, and export data.

Anaplan Integration Overview

The method of pushing data to Anaplan is common in the data warehousing space. Instead of pushing data in a transaction api (i.e. record by record), Anaplan utilizes a bulk data API which includes pushing delimitted files to a file location, and then copying the file into an Anaplan database. This is similar to Postgres and Snowflake's COPY INTO command.

Command Summary

Import anaplan connector

from anaplanConnector import Connection

Intialize the connection

  1. Basic authentication
anaplan = Connection(authType='basic',email='email@example.com',password='SecurePassword',workspaceId='anaplanWorkspaceID',modelId='AnaplanModelID')
  1. Certificate authentication
anaplan = Connection(authType='certificate', privateCertPath='./AnaplanPrivateKey.pem', publicCertPath='./AnaplanPublicKey.pem', workspaceId='anaplanWorkspaceID', modelId='AnaplanModelID')

There are two auth types: "basic" and "certificate". If basic is supplied, then the fields "email" and "password" are required. If "certificate" is supplied, then the fields "privateCertPath" and "publicCertPath" are required.

Multiple workspaceIds and modelIds can be used by doing one of the following:

  1. Change the ids directly:

    anaplan.workspaceId = 'NewWorkspaceId'

    anpalan.modelId = 'NewModelId'

  2. Make new initialization of the connector:

anaplanModel1 = Connection(email='email@example.com',password='SecurePassword',workspaceId='anaplanWorkspaceID',modelId='AnaplanModelID')
    
anaplanModel2 = Connection(email='email@example.com',password='SecurePassword',workspaceId='anaplanWorkspaceID2',modelId='AnaplanModelID2')

Get a list of Workspaces

workspaces = anaplan.getWorkspaces()

Get a list of Models

models = anaplan.getModels()

Get a list of files

files = anaplan.getFiles()

Get the fileId from a filename

fileId = anaplan.getFileIdByFilename(filename)

Load a file

anaplan.loadFile(filepath,fileId)

filepath = The local location and filename of the file to load (e.g. '/home/fileToLoad.csv')

fileId = The Anaplan file ID which can be found by running one of the above commands

Get a list of processes

processes = anaplan.getProcesses()

Get a processId from a process name

processId = anaplan.getProcessIdByName(processName)

Run a process

anaplan.runProcess(processId)

Get a list of exports

exports = anaplan.getExports()

Get an exportId from an export name

exportId = anaplan.getExportIdByName(exportName)

Export data

anaplan.export(exportId, filepath)

exportId = is Anaplan's Export ID that can be found with the above commands

filepath = is the location and filename of where you want to save the file (e.g. '/home/export.csv')

encoding (optional) = is the character encoding of the export file (default is utf-8)

Process Examples

Load data into Anaplan

from anaplanConnector import Connection

anaplan = Connection(authType='basic',email='email@example.com',password='SecurePassword',workspaceId='anaplanWorkspaceID',modelId='AnaplanModelID')

filepath = '/tmp/dataToLoad.csv'

anaplan.loadFile(filepath,anaplan.getFileIdByFilename('ExampleFile.csv'))

anaplan.runProcess(anaplan.getProcessIdByName('Import Data'))

Export data from Anaplan

from anaplanConnector import Connection

anaplan = Connection(authType='basic',email='email@example.com',password='SecurePassword',workspaceId='anaplanWorkspaceID',modelId='AnaplanModelID')

filepath = '/tmp/LocalExportedData.csv'

anaplan.export(anaplan.getExportIdByName('ExportedData.csv'), filepath)

List of features that are currently being developed

  1. Script to create the public and private pem keys from the .p12 file.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

anaplanConnector-0.1.2.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

anaplanConnector-0.1.2-py3-none-any.whl (9.4 kB view details)

Uploaded Python 3

File details

Details for the file anaplanConnector-0.1.2.tar.gz.

File metadata

  • Download URL: anaplanConnector-0.1.2.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5

File hashes

Hashes for anaplanConnector-0.1.2.tar.gz
Algorithm Hash digest
SHA256 33bc4edc130dbff7e4f8c5e4224fd504697948fa24ed8336103022d888cde770
MD5 acaf5d9c57815d5989a66ff1772a4660
BLAKE2b-256 abfe34e6d3d64a20057aa1aeaecc673659848bf52a5c54902953f3e290455115

See more details on using hashes here.

File details

Details for the file anaplanConnector-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: anaplanConnector-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 9.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5

File hashes

Hashes for anaplanConnector-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 26a9bb43253c671bed6747d7aedc4e234a0706a7b94ae35a8bacfb2ef6ae1b76
MD5 3f4ccdc405adba4fa746b395f42b5c3a
BLAKE2b-256 4d44d800a670a21372c1f6bd3340c436138026cb45002d56d760bc92712cbabf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page