Action Builder Documentation

website·Indexed 34 days ago

https://www.actionbuilder.org/docs/v1/index.html

Technical documentation for Action Builder, including the REST API v1, SQL Mirror table documentation for database mirroring, and user support guides for organizers and activists.

Tokens
30K
Snippets
109
Records
192
Agent score
62%

What's inside Action Builder

  1. Overview of Action Builder SQL Mirror

    The Action Builder SQL Mirror is a read-only, continuously updated Postgres database hosted on Amazon AWS. It provides a full copy of an organization's data, typically with a latency of no more than 1 minute. It is designed for data dumps into data warehouses and ad-hoc querying. Because it is read-only, users cannot write data or create indexes/views directly on the mirror; for such needs, data should be dumped into a separate database. To push data into Action Builder, the API must be used instead.
  2. Overview of the entities table in SQL Mirror

    The entities table in the Action Builder SQL Mirror contains data about entities within an organization. It is used to identify existing entities, retrieve basic entity information, and access metadata such as the entity's creation date.
  3. Overview of Taggings in Action Builder

    v1
    Taggings are used to store or gather essential details on entities (people) and connections. They represent the state of an entity or connection having a specific tag on their record and reflect the info fields and responses seen in the Action Builder UI. Taggings support various data formats, including standard, number, date, address, note, and shift.
  4. Overview of the contact_attempts table

    The contact_attempts table in the Action Builder SQL Mirror stores data regarding contact attempts made to entities within an organization. This includes attempts originating from canvass tasks or log contact forms. It is used to track which entities were contacted, the timing of the contact, and metadata such as the disposition of the attempt and its creation timestamp.
  5. Overview of the phone_numbers table in Action Builder SQL Mirror

    The phone_numbers table in the Action Builder SQL Mirror contains data regarding phone numbers associated with entities within an organization. It is used to identify existing phone numbers, determine which entities they are attached to, and retrieve metadata such as the creation date of the phone number record.
  6. Overview of Action Builder Developer Tools

    Action Builder provides a suite of developer tools designed to extend organizing programs. These tools include a programmatic API for system interaction and a read-only SQL mirror for data access.
  7. Manage events and attendee information

    Action Builder supports virtual and in-person events. It allows organizers to gather information on attendee needs, contributions, and engagement levels. Tasks can be used to manage turnout outreach, track attendance, and handle post-event follow-up.
  8. Action Builder Tag resource schema

    v1
    A Tag resource in Action Builder contains metadata about the tag, its field type, and associated data (such as postal addresses). Key fields include name, action_builder:section (the section the tag belongs to), action_builder:field (the field label), and action_builder:field_type (e.g., 'address').
    {
      "origin_system": "Action Builder",
      "identifiers": [
        "action_builder:b34d2074-de72-498f-9704-4f3a97571594"
      ],
      "created_date": "2022-09-22T15:08:55.081Z",
      "modified_date": "2022-09-22T15:08:55.167Z",
      "name": "1600 Pennsylvania Ave",
      "action_builder:section": "Basic Info",
      "action_builder:field": "Meeting Place",
      "action_builder:field_type": "address",
      "action_builder:locked": false,
      "action_builder:allow_multiple_responses": false,
      "action_builder:postal_addresses": [
        {
          "address_lines": [
            "1600 Pennsylvania Ave NW"
          ],
          "locality": "Washington",
          "region": "DC",
          "postal_code": "20500",
          "country": "US",
          "source": "action_builder"
        }
      ],
      "_links": {
        "self": { "href": "..." },
        "action_builder:campaign": { "href": "..." },
        "osdi:taggings": { "href": "..." }
      }
    }
  9. Reference the custom_forms table schema

    The custom_forms table stores data about custom forms used when entities are created or conversations are logged. It can be used to identify which forms are associated with specific campaigns and to retrieve form metadata such as creation timestamps.
    -- Table: custom_forms
    -- Columns:
    -- id (INT8, Not Null): Numerical identifier of the object.
    -- name (VARCHAR, Nullable): Autogenerated name of the custom form (not displayed in UI).
    -- description (TEXT, Nullable): Currently unused.
    -- campaign_id (INT4, Not Null): ID of the campaign; relates to campaigns.id.
    -- target_type (VARCHAR, Nullable): Type of object; always 'EntityType'.
    -- target_type_id (INT4, Nullable): ID of the entity type; relates to entities.id.
    -- created_by_id (INT8, Not Null): ID of the user who created the form; relates to users.id.
    -- deleted_by_id (INT8, Nullable): ID of the user who deleted the form; relates to users.id.
    -- created_at (TIMESTAMP, Not Null): UTC timestamp of creation.
    -- updated_at (TIMESTAMP, Not Null): UTC timestamp of last update.
  10. Technical constraints and API specifications

    v1

    The Action Builder API v1 adheres to the following technical specifications:

    • Architecture: RESTful using HAL+JSON format.
    • Standard: Generally conforms to the Open Supporter Data Interface (OSDI) specification version 1.2.0.
    • Rate Limiting: Maximum of 4 calls per second. Users should implement a queue and retry failures with exponential backoff.
    • Required Headers: Content-Type: application/json is generally required for requests.
  11. Connection Type resource schema

    v1
    The Connection Type resource contains metadata about the relationship between two entity types.

    Connection Type Fields

    Field NameTypeDescription
    origin_systemstringHuman readable string identifying where this connection type originated.
    identifiersstrings[]Read-only Action Builder identifiers in format [system name]:[id].
    created_datedatetimeSystem generated creation timestamp.
    modified_datedatetimeSystem generated last modified timestamp.
    connectionconnection[]Array of the entity types that form this connection.

    Connection Fields (Nested)

    Field NameTypeDescription
    connection.typesstringThe plural name of the entity type forming this connection (two will always be present).
  12. API capabilities and limitations

    v1

    The Action Builder API is designed for data synchronization and management, not as a replacement for the user interface.

    • Supported Actions: Creating, matching, updating, and adding information to people, entities, and connections.
    • Unsupported Actions: Management tasks such as creating campaigns, entities, fields, or responses must be performed within the Action Builder UI.
    • Bulk Data: While GET requests work at all endpoints, the SQL mirror is recommended for bulk data retrieval.