Valid relationship types are ["affiliate-affiliate", "alum-school", "assistant-assisted", "board_member-organization", "candidate-committee", "chapter-parent", "child-parent", "consultant-organization", "employee-employer", "family_partner-family_partner", "friend-friend", "member-organization", "mentee-mentor", "partner-partner", "primary_contact-organization", "relative-relative", "representative-constituent", "resident-organization", "sibling-sibling", "spouse-spouse", "student-school", "student-teacher", "subordinate-manager", "subsidiary-parent", "treasurer-committee"]. first_signup_id corresponds with the ID of the signup on the first role listed, and second_signup_id corresponds with the ID of the signup on the second role listed in the relationship type."
NationBuilder Relationships API is one of 41 APIs that NationBuilder publishes on the APIs.io network, described by a machine-readable OpenAPI specification.
Tagged areas include Relationships. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, and a getting-started guide.
This API exposes
5 operations
across 2 paths,
and defines 22 schemas.
It is described by OpenAPI 3.1.2, at version 2.0.
Requests are made against a single base URL, https://{subdomain}.nationbuilder.com.
5 operations2 paths22 schemas1 DELETE2 GET1 PATCH1 POST
Metadata
The identity and technical contract details declared by the specification.
Specification
OpenAPI 3.1.2
API Version
2.0
Base URL
https://{nation-slug}.nationbuilder.com/api/v2
Authentication
HTTP Bearer
Resource Areas
1
Authentication & Security 1
NationBuilder Relationships API declares
1 security scheme
for authenticating requests.
It accepts HTTP bearer tokens (JWT) (BearerAuth).
By default, every request must be authenticated.
BearerAuth — Authentication using a bearer token (JWT) issued via OAuth.
Paths & Operations 5
Across 2 paths, the API surfaces 5 operations — 1 DELETE, 2 GET, 1 PATCH, 1 POST. Each is listed below with its method, path, parameters, and response codes.
The contract defines 22 schemas that model the data the API accepts and returns. The most detailed are validation_error (6 properties), pagination_links (5 properties), relationship_read_write_attributes (4 properties), index_document (4 properties). Each schema is shown below with its type and property counts.
error_response
object
The error body returned for 4xx and 5xx responses, with a machine-readable code and a human-readable message. Some errors include additional detail members alo…
2 properties2 required
show_document
object
The JSON:API top-level document shape for responses returning a single resource under the data member.
3 properties1 required
relationship_field_values
string
Readable relationship attribute names selectable with sparse fieldsets (fields[relationships]).
relationship_update_request
The request body for updating an existing relationship.
resource_identifier
object
A JSON:API resource identifier object, the type/id pair that uniquely identifies a single resource.
2 properties2 required
relationship_response_data
The JSON:API resource object representing a relationship.
relationship_read_only_attributes
object
The read-only attributes of a relationship.
2 properties
pagination_links
object
JSON:API pagination links for the pages of a collection. A key whose page is unavailable, or that the server's pagination strategy does not provide, is omitted…
5 properties
index_document
object
The JSON:API top-level document shape for paginated collection responses, with resource objects under data and pagination links.
4 properties1 required
validation_error
object
A single JSON:API error object describing a validation failure, locating the invalid field via source.pointer and carrying the model-level attribute, message,…
6 properties
relationship_show_response
A JSON:API response containing a single relationship.
delete_document
object
The successful destroy response, an empty JSON:API meta-only document returned with status 200 (rather than JSON:API's commonly used 204 No Content).
1 property1 required
relationship_index_response
A paginated JSON:API response containing a list of relationships.
rate_limited_response
object
The body returned by the rate limiter when an access token exceeds its request quota.
1 property1 required
relationship_create_request
The request body for creating a new relationship.
validation_error_document
object
The JSON:API errors document returned with status 422 when model validations fail on create or update. Unlike this API's flat 4xx error bodies, validation fail…
1 property1 required
update_request_document
object
The JSON:API top-level document shape for update requests, whose data member identifies the resource by type and id and carries the changed attributes.
1 property1 required
create_request_document
object
The JSON:API top-level document shape for create requests, whose data member carries the new resource's type and attributes.
1 property1 required
resource
A generic JSON:API resource object. Resources sideloaded in a document's included member use this shape; their attributes are those of the resource type named…
included
array
Sideloaded resources requested via the include query parameter. Each entry is a full resource object whose shape is documented under its own resource type.
relationship_sideload_values
string
Relationship names that can be sideloaded with the include query parameter on relationship endpoints.
relationship_read_write_attributes
object
The attributes of a relationship that can be both read and written.
4 properties
Specification
The full machine-readable OpenAPI contract behind this narrative.