Chariot Donor Advised Funds API

The Donor Advised Funds API from Chariot — 2 operation(s) for donor advised funds.

OpenAPI Specification

chariot-donor-advised-funds-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Chariot FDX Accounts Donor Advised Funds API
  version: '6.0'
  description: Financial Data Exchange (FDX) v6 compatible API for read-only access to Chariot bank account data. Implements the FDX v6 standard for account information, transactions, and statements.
  contact:
    name: Chariot Development Team
    url: https://givechariot.com/contact
    email: developers@givechariot.com
servers:
- url: https://api.givechariot.com/fdx/v6
  description: Production
- url: https://devapi.givechariot.com/fdx/v6
  description: Staging
security:
- oauth2: []
tags:
- name: Donor Advised Funds
paths:
  /v1/dafs:
    get:
      summary: List Donor Advised Funds
      description: 'Returns a list of all Donor Advised Funds within Chariot''s system. This API allows for paginating over many results.


        <Note>

        If there are DAFs missing from the list, please contact support at support@givechariot.com.

        </Note>'
      operationId: list-dafs
      tags:
      - Donor Advised Funds
      security:
      - bearerAuth: []
      parameters:
      - name: supportedOnly
        in: query
        description: If set to true, filters DAFs to only those that have a direct integration with Chariot.
        schema:
          type: boolean
          default: false
      - name: query
        in: query
        description: If included, filters DAFs to only those that contain the query. This parameter is case insensitive.
        schema:
          type: string
      - name: pageLimit
        in: query
        description: the number of results to return; defaults to 10, max is 100
        schema:
          type: integer
          default: 10
      - name: pageToken
        in: query
        description: A token to use to retrieve the next page of results. This is useful for paginating over many pages of results. If set, all other arguments are expected to be kept the same as previous calls.
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/ListDafsResponse'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/AuthenticationError'
        '500':
          $ref: '#/components/responses/InternalServerError'
  /v1/dafs/{id}:
    get:
      summary: Get Donor Advised Fund
      description: Retrieve a DAF with a given ID.
      operationId: get-daf
      tags:
      - Donor Advised Funds
      security:
      - bearerAuth: []
      parameters:
      - name: id
        in: path
        description: 'The unique id of the DAF.

          The format should be a v4 UUID according to RFC 4122.'
        schema:
          type: string
          format: uuid
        required: true
        example: f9e28217-e0f7-4a54-9764-d664ffb10722
      responses:
        '200':
          description: OK
          headers:
            X-Request-Id:
              $ref: '#/components/headers/X-Request-Id'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Daf'
              examples:
                Npt:
                  $ref: '#/components/examples/DafOutput'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/AuthenticationError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  schemas:
    Daf:
      type: object
      description: 'A Donor-Advised Fund, or `DAF` for short, is a special-purpose, tax-advantaged charitable account.

        For more information, please see the [IRS website](https://www.irs.gov/charities-non-profits/charitable-organizations/donor-advised-funds) for a full description.

        In the case that a DAF is supported, a donor will be able to initiate a grant directly through DAFpay.'
      required:
      - id
      - orgName
      - address
      - address2
      - city
      - state
      - zip
      - supported
      - minimumGrantAmount
      - institutionDown
      properties:
        id:
          type: string
          readOnly: true
          description: The unique identifier for this object.
          example: 0bf40881-8ee2-47fb-98ca-f58c7999aa34
        orgName:
          type: string
          readOnly: true
          description: A human readable name for the DAF.
          example: website
        address:
          type: string
          readOnly: true
          description: The first address line.
          example: 123 Main St.
        address2:
          type: string
          readOnly: true
          description: The second address line.
          example: Apt 100
        city:
          type: string
          readOnly: true
          description: The city name for the address.
          example: New York City
        state:
          type: string
          readOnly: true
          description: The state name for the address.
          example: New York
        zip:
          type: string
          readOnly: true
          description: The zipcode for the address.
          example: '12345'
        supported:
          type: boolean
          readOnly: true
          description: A flag to indicate if this DAF is supported by DAFpay.
          example: false
        minimumGrantAmount:
          type: number
          readOnly: true
          description: The minimum grant amount in cents allowed for this DAF.
          example: 5000
        institutionDown:
          type: boolean
          readOnly: true
          description: A flag to indicate if the institution is down.
          example: false
    ProblemDetails:
      type: object
      description: RFC 7807 problem-details error (media type application/problem+json). The `status` field is an integer HTTP status code.
      required:
      - type
      - title
      - status
      - detail
      properties:
        type:
          type: string
          description: A URI reference identifying the problem type.
          example: about:blank
        title:
          type: string
          description: A short, human-readable summary of the problem type.
          example: API Error
        status:
          type: integer
          description: The HTTP status code for this error.
          example: 400
        detail:
          type: string
          description: A human-readable explanation specific to this occurrence.
          example: The request is invalid or contains invalid parameters.
      example:
        type: about:blank
        title: API Error
        status: 400
        detail: The request is invalid or contains invalid parameters.
  responses:
    BadRequestError:
      description: The request is invalid or contains invalid parameters
      headers:
        X-Request-Id:
          $ref: '#/components/headers/X-Request-Id'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/ProblemDetails'
          examples:
            BadRequest:
              value:
                type: about:blank
                title: API Error
                status: 400
                detail: The request is invalid or contains invalid parameters.
    InternalServerError:
      description: Internal Server Error
      headers:
        X-Request-Id:
          $ref: '#/components/headers/X-Request-Id'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/ProblemDetails'
          examples:
            InternalServerError:
              value:
                type: about:blank
                title: API Error
                status: 500
                detail: The server encountered an error processing your request.
    NotFoundError:
      description: Resource Not Found
      headers:
        X-Request-Id:
          $ref: '#/components/headers/X-Request-Id'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/ProblemDetails'
          examples:
            NotFound:
              value:
                type: about:blank
                title: API Error
                status: 404
                detail: The requested resource was not found.
    AuthenticationError:
      description: Unauthorized. The request is missing the security (OAuth2 Bearer token) requirements and the server is unable to verify the identify of the caller.
      headers:
        X-Request-Id:
          $ref: '#/components/headers/X-Request-Id'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/ProblemDetails'
          examples:
            Unauthorized:
              value:
                type: about:blank
                title: API Error
                status: 401
                detail: Authentication credentials were missing or invalid.
    ListDafsResponse:
      description: The response for Dafs.list
      headers:
        X-Request-Id:
          $ref: '#/components/headers/X-Request-Id'
      content:
        application/json:
          schema:
            type: object
            properties:
              results:
                type: array
                items:
                  $ref: '#/components/schemas/Daf'
              nextPageToken:
                type: string
                description: A cursor token to use to retrieve the next page of results by making another API call to the same endpoint with the same parameters (only substituting the pageToken with this value). If specified, then more results exist on the server that were not returned, otherwise no more results exist on the server.
          example:
            results:
            - id: 0bf40881-8ee2-47fb-98ca-f58c7999aa34
              orgName: National Philanthropic Trust
              address: 123 Main St.
              address2: Apt 100
              city: New York
              state: NY
              zip: '12345'
              supported: true
              minimumGrantAmount: 5000
              institutionDown: false
            nextPageToken: c3f685f2-2dda-4956-815b-39867a5e5638
  examples:
    DafOutput:
      summary: NPT DAF
      value:
        id: 0bf40881-8ee2-47fb-98ca-f58c7999aa34
        orgName: National Philanthropic Trust
        address: 123 Main St.
        address2: Apt 100
        city: New York City
        state: New York
        zip: '12345'
        supported: true
        minimumGrantAmount: 25000
        institutionDown: false
  headers:
    X-Request-Id:
      description: The unique identifier for the request
      schema:
        type: string
  securitySchemes:
    oauth2:
      type: oauth2
      description: OAuth 2.0 Bearer token. A client may hold both scopes, but each FDX authorization must contain exactly one — they are mutually exclusive per authorization. An authorization containing both will be rejected. See the Authentication page for token exchange details.
      flows:
        authorizationCode:
          authorizationUrl: https://dashboard.givechariot.com/oauth/authorize
          tokenUrl: https://api.givechariot.com/auth/oauth/token
          scopes:
            read:bank_accounts: Read access to bank account data
            sync:connected_accounts: Sync access to connected account data