Chariot Connects API
The Connects API from Chariot — 2 operation(s) for connects.
The Connects API from Chariot — 2 operation(s) for connects.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/chariot-connects-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Chariot Connects API
version: v1
description: The Chariot REST API. Please see https://docs.givechariot.com/api for more details.
contact:
name: Chariot Development Team
url: https://givechariot.com/contact
email: developers@givechariot.com
termsOfService: https://givechariot.com/legal-nonprofit
servers:
- url: https://sandboxapi.givechariot.com
description: Sandbox
- url: https://api.givechariot.com
description: Production
tags:
- name: Connects
paths:
/v1/connects:
post:
summary: Create Connect
description: 'Get an existing connect or create a new connect for an existing nonprofit organization.
The returned Connect can be used to integrate the client-side Chariot Connect component using the `id` property (CID) and also query for data generated from the Chariot Connect instance using the connect_id query parameter in any of the List Grants API endpoints.
<Note>
Only one Connect object can be created per organization.
If one already exists, this will return a `200 OK` status with the existing object.
</Note>'
operationId: create-connect
tags:
- Connects
security:
- bearerAuth: []
requestBody:
$ref: '#/components/requestBodies/CreateConnectRequest'
responses:
'200':
description: OK
headers:
X-Request-Id:
$ref: '#/components/headers/X-Request-Id'
Location:
$ref: '#/components/headers/Location'
content:
application/json:
schema:
$ref: '#/components/schemas/Connect'
examples:
Simple:
$ref: '#/components/examples/ConnectOutput'
'201':
description: Created
headers:
X-Request-Id:
$ref: '#/components/headers/X-Request-Id'
Location:
$ref: '#/components/headers/Location'
content:
application/json:
schema:
$ref: '#/components/schemas/Connect'
examples:
Simple:
$ref: '#/components/examples/ConnectOutput'
'400':
$ref: '#/components/responses/BadRequestError'
'401':
$ref: '#/components/responses/AuthenticationError'
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/InternalServerError'
/v1/connects/{id}:
get:
summary: Get Connect
description: Retrieve a connect with the given ID.
operationId: get-connect
tags:
- Connects
security:
- bearerAuth: []
parameters:
- name: id
in: path
description: the unique id of the connect
schema:
type: string
required: true
example: live_xJd0lUrvpDkzeGBWZbuI2wbvEdM
responses:
'200':
description: OK
headers:
X-Request-Id:
$ref: '#/components/headers/X-Request-Id'
content:
application/json:
schema:
$ref: '#/components/schemas/Connect'
'400':
$ref: '#/components/responses/BadRequestError'
'401':
$ref: '#/components/responses/AuthenticationError'
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/InternalServerError'
components:
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.
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.
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.
ForbiddenError:
description: Access denied
headers:
X-Request-Id:
$ref: '#/components/headers/X-Request-Id'
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
examples:
Forbidden:
value:
type: about:blank
title: API Error
status: 403
detail: You do not have permission to access this resource.
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.
headers:
Location:
description: The URI of the created object
schema:
type: string
X-Request-Id:
description: The unique identifier for the request
schema:
type: string
requestBodies:
CreateConnectRequest:
description: The request to create a new Connect object for a nonprofit.
required: true
content:
application/json:
schema:
type: object
required:
- organization_id
- contact
properties:
organization_id:
type: string
description: The unique identifier for the organization
example: org_1234567890
contact:
type: object
required:
- email
properties:
email:
type: string
description: The email address for the nonprofit account contact
example: ben.give@co.com
phone:
type: string
description: The phone number for the nonprofit account contact
example: '9127772424'
first_name:
type: string
description: The first name of the nonprofit account contact that manages this Connect
example: Ben
last_name:
type: string
description: The last name of the nonprofit account contact that manages this Connect
example: Give
name:
type: string
description: A human readable name of the Connect, optional.
metadata:
type: object
description: A map of arbitrary string keys and values to store information about the object.
additionalProperties:
type: string
examples:
ConnectOutput:
summary: Simple connect output
value:
id: test_de5a2e7d-c960-4eaa-8bd2-e8d2cc5b1a55
name: website
apiKey: test_98235982835
active: true
createdAt: '2021-07-10 15:00:00.000'
updatedAt: '2020-01-31T23:59:59Z'
createdBy: user123
metadata:
tag1: value1
schemas:
Connect:
type: object
description: 'A Connect represents an instance of Chariot Connect for a particular nonprofit. A nonprofit organization will create Connect objects in order to integrate Chariot Connect into their websites or fundraising platforms to start accepting donations directly from Donor Advised Funds. Each nonprofit can have multiple Connect objects where each one represents a logical separation for how the organization wants to organize their sources of donations. For example, they might have 2 Connect instances, one that they use to integrate Chariot Connect directly on their website and the other that they provide to a 3rd party fundraising platform. On the client side, Chariot Connect is instantiated with the `id` of the Connect object, also called the `cid`. A connect object also contains an `apiKey`. This is useful for nonprofits to provide to fundraising platforms on their behalf to programatically integrate Chariot Connect and access resources and information created from the Connect instance through various Chariot API endpoints. More information on integrating Chariot Connect into a client-side application can be found here: https://givechariot.readme.io'
required:
- id
- apiKey
properties:
id:
type: string
readOnly: true
description: The unique identifier for this object. This is also the 'publishable' cid to use for initializing Connect for client-side integration.
example: test_connect123
name:
type: string
description: A human readable name for the connect, optional.
example: website
apiKey:
type: string
readOnly: true
description: (deprecated) A secure token that can be used to make M2M API calls to read data generated by this object.
example: test_apiTokenABC
active:
type: boolean
description: A flag to indicate if this connect is active. If true, then this Connect can process donations and grants, otherwise this Connect cannot process grants.
example: true
createdAt:
type: string
readOnly: true
format: date-time
description: Time when this object was created. Expressed in RFC 3339 format.
example: '2020-01-31T23:00:00Z'
updatedAt:
type: string
readOnly: true
format: date-time
description: Time when this object was last updated. Expressed in RFC 3339 format.
example: '2020-01-31T23:59:59Z'
createdBy:
type: string
readOnly: true
description: ID of the user who created this object.
example: auth0-user-id-123
archived:
type: boolean
readOnly: true
description: A flag to indicate if this object is marked for deletion.
example: false
metadata:
type: object
description: A map of arbitrary string keys and values to store information about the object.
additionalProperties:
type: string
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.
securitySchemes:
bearerAuth:
type: http
scheme: bearer