There’s a popular political off-the-shelf data management / CRM/ etc package called NationBuilder.
Under the hood, the database is apparently a PostGreSQL database. As such, it could be written to directly, using SQL commands, presumably from an ODBC connection.
Anyone know whether or not it’s that simple? Or do the NationBuilder folks have it locked down in such a way that no outside process can write to its tables? Do they provide “hooks” (APIs) to allow exchange of data to be driven by engines operating outside of NationBuilder?
I don’t know anything about NationBuilder, but if it’s a postgres database, it’s a postgres database, and you can connect to it with any suitable client library and poke and prod at the tables to your heart’s content.
Agreed, although there’s no guarantee they will have made the database schema simple to understand from outside the context of the application, and if they care about stopping people tinkering directly with the DB, they may have implemented something like hashing or checksums to detect changes made independently of the front end software.
Make a backup of the database before you fiddle with it.
I’ve dealt with more than one SQL database that even SELECTing from tables directly was all but guaranteed to give nonsense. Reading via the Get-Whatever stored procedure layer was still a bear because of the amount of higher level processing you’re skipping that’s below the intended interface level of the app’s programmatic API.
And Og forbid you try to write to the DB using either raw SQL or even their stored procs. You had essentially zero chance of success and 100% chance of creating corruption, be that subtle or widely catastrophic.
This appears to be some kind of a cloud-based service? If so, I’d be surprised if they allow direct access to the database from external sources. That’s going to have to do with their network security, not any specifics about their data storage.
They do have an API, and based on what I’m seeing that’d be the only way you’d be able to get at their data. There’s also a number of other applications that have built-in integrations already, presumably using that same API.
Perusing the list of endpoints and knowing nothing else about the site, it appears that you can read/write data as well as executing reports that you (presumably) create via the site itself. No custom SQL.
Concur. Even trying to attach a simple report writer to someone else’s design of DB is generally incredibly painful, even when you have access to the front end so you can compare values in the tables vs those visible in the GUI, unless you have documentation regarding the structure.
In that case, yes, you’re only going to be allowed to do what they wish you to do, on their terms (and if anything else is possible beyond that, then their product is badly designed for security). From the OP, I thought we were talking about something that could be installed on your own infrastructure, but it appears not.
I contacted the NationBuilder support team, and found the person very helpful and informative, not restricting support info to people with a license (Or org has a minimal license but I didn’t have the proof of that at the time). I explained what I wanted to know.
a) As I’d thought from reading other materials, NationBuilder sits on top of a PostGreSQL database structure.
b) As I’d kind of anticipated, NationBuilder doesn’t give a licensed user free reign to directly edit the SQL tables by issuing their own SQL commands from outside NationBuilder. But they do provide access to the API.
c) Based on the type of license (mimimal, closest to freebie) that our org has for NationBuilder, any of us who wanted access to the API would first need to obtain certification. (More expensive license plans may have access to the API bundled in automatically) The URLs for applying for certification are at https://nationbuilder.com/partner_opportunities#developers
I have applied and will see whether or not I find it too arcane to handle.
Yaay! Progress of a sort. Or at least not a brick wall yet.
Please keep us posted, this’ll be an adventure for all of us IT geeks.