Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

NationBuilder Donation Tracking Codes API

Tracking codes are used to identify where a financial transaction came from. Users give the tracking code a custom name/slug and use the code to track where a donation was made. Read more about them [here](https://support.nationbuilder.com/en/articles/2344337-understanding-tracking-codes).

NationBuilder Donation Tracking Codes API is one of 41 APIs that NationBuilder publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Donation Tracking Codes. 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 operations 2 paths 22 schemas 1 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 Donation Tracking Codes 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.

Donation Tracking Codes 5

Tracking codes are used to identify where a financial transaction came from. Users give the tracking code a custom name/slug and use the code to track where a donation was made. R…

POST
/api/v2/donation_tracking_codes
Create a donation tracking code
createDonationTrackingCode 2 params body → 201400401422429
GET
/api/v2/donation_tracking_codes
List all donation tracking codes in a nation
listDonationTrackingCodes 4 params → 200401429
GET
/api/v2/donation_tracking_codes/{id}
Show donation tracking code with provided ID
showDonationTrackingCode 3 params → 200401404429
PATCH
/api/v2/donation_tracking_codes/{id}
Update an existing donation tracking code
updateDonationTrackingCode 3 params body → 200400401404422429
DELETE
/api/v2/donation_tracking_codes/{id}
Delete donation tracking code with provided ID
deleteDonationTrackingCode 3 params → 200401404429

Schemas 22

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), index_document (4 properties), show_document (3 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 properties 2 required
show_document
object
The JSON:API top-level document shape for responses returning a single resource under the data member.
3 properties 1 required
donation_tracking_code_index_response
A paginated JSON:API response containing a list of donation tracking codes.
resource_identifier
object
A JSON:API resource identifier object, the type/id pair that uniquely identifies a single resource.
2 properties 2 required
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
donation_tracking_code_create_request
The request body for creating a new donation tracking code.
index_document
object
The JSON:API top-level document shape for paginated collection responses, with resource objects under data and pagination links.
4 properties 1 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
donation_tracking_code_read_only_attributes
object
The read-only attributes of a donationtrackingcode.
2 properties
donation_tracking_code_show_response
A JSON:API response containing a single donation tracking code.
donation_tracking_code_field_values
string
Readable donationtrackingcode attribute names selectable with sparse fieldsets (fields[donationtrackingcodes]).
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 property 1 required
rate_limited_response
object
The body returned by the rate limiter when an access token exceeds its request quota.
1 property 1 required
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 property 1 required
donation_tracking_code_read_write_attributes
object
The attributes of a donationtrackingcode that can be both read and written.
2 properties
donation_tracking_code_response_data
The JSON:API resource object representing a donation tracking code.
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 property 1 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 property 1 required
donation_tracking_code_update_request
The request body for updating an existing donation tracking code.
donation_tracking_code_sideload_values
string
Relationship names that can be sideloaded with the include query parameter on donationtrackingcode endpoints.
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.

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

nationbuilder-donation-tracking-codes-api-openapi.yml Raw ↑

Other APIs NationBuilder publishes across the network.

NationBuilder Async Processes API
NationBuilder Automation Enrollments API
NationBuilder Automations API
NationBuilder Ballots API
NationBuilder Broadcasters API
NationBuilder Contacts API
NationBuilder Custom Fields API
NationBuilder Donations API
NationBuilder Elections API
NationBuilder Event Rsvps API
NationBuilder Event Ticket Levels API
NationBuilder Events API