Project

gliffy

0.0
No commit activity in last 3 years
No release in over 3 years
A simple Gliffy REST API wrapper.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

>= 0
>= 0
 Project Readme

Gliffy API wrapper

Gem Version Code Climate Bitdeli Badge

Basic usage

Initialization

api = Gliffy::API.new(ACCOUNT_ID, API_KEY, API_SECRET)
api.impersonate('user@domain.com')
api.account.root.documents

Working with documents

doc = account.document(DOCUMENT_ID)

doc.name
doc.rename("NEW NAME")

doc.editor(RETURN_TO, RETURN_BUTTON_TEXT)

doc.delete

doc.public?
doc.public = false

Download document as PNG

doc.png.full
doc.png.medium
doc.png.small
doc.png.thumbnail

Download document as SVG

doc.svg.content

Download document as XML

doc.xml.content

Working with folders

root = account.root
root.folders[0].documents
root.folders[1].name
root.folders[1].path

folder.delete

folder.users
folder.grant_access(user)
folder.revoke_access(user)

Users

account.users

account.users[0].username
account.users[1].email

account.create_user("john-smith")

user.email = "new-email@test.com"
user.password = "new-password"
user.admin = true

user.accessible_folders

Command-line client

Authenticating yourself to gliffy API

CLI client looks for credentials in ~/.gliffy-cli file by default. It is a YAML file with a following simple structure:

gliffy:
  account: <YOUR ACCOUNT ID>
  oauth:
    consumer_key: <YOUR OAUTH CONSUMER KEY>
    consumer_secret: <YOUR OAUTH CONSUMER SECRET>

An alternative ways to specify API credentials are:

  • use --credentials flag
gliffy-cli --credentials <PATH TO CREDENTIALS FILE> ...
  • use --account-id, --consumer-key and --consumer-secret flags
gliffy-cli --account-id <ID> --consumer-key <KEY> --consumer-secret <SECRET> ...

The next step is to impersonate an user:

gliffy-cli ... --user <USERNAME> ...

Keep in mind that new users are provisioned automatically, so if <USERNAME> does not exists, it will be created for you by Gliffy.

List of available commands:

  • user add <USERNAME>
  • user delete <USERNAME>
  • user list
  • user update email <USERNAME>
  • user update password <USERNAME>
  • user admin grant <USERNAME>
  • user admin revoke <USERNAME>
  • document add
  • document content <ID>.<FORMAT>
  • document name <ID>.<FORMAT>
  • document delete <ID>
  • document rename <ID> <NAME>
  • document access public <ID>
  • document access private <ID>
  • folder documents <PATH>
  • folder folders <PATH>
  • folder users <PATH>
  • folder access grant <PATH> <USERNAME>
  • folder access revoke <PATH> <USERNAME>
  • folder document create <PATH> <DOCUMENT>
  • folder create <PATH>
  • folder delete <PATH>

Misc functionality

  • --log-http enables HTTP requests and response logging to STDERR