> ## Documentation Index
> Fetch the complete documentation index at: https://docs.donate.gg/llms.txt
> Use this file to discover all available pages before exploring further.

# Search a charity register

> Search one official register by charity name or registration number. Each result says whether the charity is already listed, already requested, requestable, ineligible or unavailable. Searching never requests or lists a charity. Returns up to 10 results. Register searches have their own budget on top of the normal API rate limit: 120 per minute per API-key project, or 30 per minute per anonymous client (shared with donate.gg).



## OpenAPI

````yaml https://api.donate.gg/api/openapi get /v1/charity-requests/search
openapi: 3.1.1
info:
  title: Donate Developer API
  version: 1.0.0
  description: >-
    Public JSON API for charities, configs, campaigns, tokens, and related
    catalog reads. Operations are grouped by version (`/v1`, and later `/v2`).
    GET/HEAD catalog routes may omit `donate-api-key` and are IP rate-limited
    for anonymous callers (~20 req/min). Authenticated keys share one
    organization rate-tier bucket. Create/list configs and project analytics
    require an API key. Configs are permanent; the retained authenticated DELETE
    endpoint rejects deletion. Unpublished internal routes are omitted. Spec
    routes (`/api/openapi`, `/api/postman`) are unauthenticated and unmetered.
servers:
  - url: /api
    description: API origin. Version prefixes live on each operation path.
security:
  - {}
  - ApiKeyAuth: []
paths:
  /v1/charity-requests/search:
    get:
      summary: Search a charity register
      description: >-
        Search one official register by charity name or registration number.
        Each result says whether the charity is already listed, already
        requested, requestable, ineligible or unavailable. Searching never
        requests or lists a charity. Returns up to 10 results. Register searches
        have their own budget on top of the normal API rate limit: 120 per
        minute per API-key project, or 30 per minute per anonymous client
        (shared with donate.gg).
      operationId: v1.charityRequests.search
      parameters:
        - name: register
          in: query
          required: true
          schema:
            enum:
              - united-states
              - england-wales
              - scotland
              - northern-ireland
              - france
              - japan
              - new-zealand
              - norway
              - netherlands
              - canada
              - australia
            type: string
            description: Register id from GET /charity-requests/registers
          allowEmptyValue: true
          allowReserved: true
        - name: term
          in: query
          required: true
          schema:
            type: string
            description: Charity name or registration number
          allowEmptyValue: true
          allowReserved: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      type: object
                      properties:
                        register:
                          enum:
                            - united-states
                            - england-wales
                            - scotland
                            - northern-ireland
                            - france
                            - japan
                            - new-zealand
                            - norway
                            - netherlands
                            - canada
                            - australia
                          type: string
                          description: Register id from GET /charity-requests/registers
                        country:
                          enum:
                            - US
                            - UK
                            - FR
                            - JP
                            - NZ
                            - 'NO'
                            - NL
                            - CA
                            - AU
                          type: string
                        registration:
                          type: string
                          description: Canonical registration number to request
                        name:
                          type: string
                        logo:
                          anyOf:
                            - type: string
                            - type: 'null'
                        website:
                          anyOf:
                            - type: string
                            - type: 'null'
                        mission:
                          anyOf:
                            - type: string
                            - type: 'null'
                        city:
                          anyOf:
                            - type: string
                            - type: 'null'
                        state:
                          anyOf:
                            - type: string
                            - type: 'null'
                        status:
                          enum:
                            - listed
                            - requested
                            - requestable
                            - ineligible
                            - unavailable
                          type: string
                        eligibilityIssues:
                          type: array
                          items:
                            type: string
                        charity:
                          anyOf:
                            - type: object
                              properties:
                                id:
                                  type: string
                                slug:
                                  type: string
                              required:
                                - id
                                - slug
                              additionalProperties: false
                            - type: 'null'
                      required:
                        - register
                        - country
                        - registration
                        - name
                        - logo
                        - website
                        - mission
                        - city
                        - state
                        - status
                        - eligibilityIssues
                        - charity
                      additionalProperties: false
                required:
                  - items
                additionalProperties: false
        '400':
          description: '400'
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    properties:
                      defined:
                        const: true
                      code:
                        const: VALIDATION_ERROR
                      status:
                        const: 400
                      message:
                        type: string
                        default: Validation failed
                      data:
                        type: object
                        properties:
                          error:
                            type: string
                          code:
                            const: VALIDATION_ERROR
                          issues:
                            type: array
                            items:
                              anyOf:
                                - {}
                                - type: 'null'
                        required:
                          - error
                          - code
                        additionalProperties: false
                    required:
                      - defined
                      - code
                      - status
                      - message
                  - type: object
                    properties:
                      defined:
                        const: true
                      code:
                        const: INVALID_SEARCH
                      status:
                        const: 400
                      message:
                        type: string
                        default: This search cannot be used with the selected register
                      data:
                        type: object
                        properties:
                          error:
                            type: string
                          code:
                            const: INVALID_SEARCH
                        required:
                          - error
                          - code
                        additionalProperties: false
                    required:
                      - defined
                      - code
                      - status
                      - message
                  - type: object
                    properties:
                      defined:
                        const: false
                      code:
                        type: string
                      status:
                        type: number
                      message:
                        type: string
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
        '429':
          description: '429'
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    properties:
                      defined:
                        const: true
                      code:
                        const: RATE_LIMIT_EXCEEDED
                      status:
                        const: 429
                      message:
                        type: string
                        default: Rate limit exceeded
                      data:
                        type: object
                        properties:
                          error:
                            type: string
                          code:
                            const: RATE_LIMIT_EXCEEDED
                        required:
                          - error
                          - code
                        additionalProperties: false
                    required:
                      - defined
                      - code
                      - status
                      - message
                  - type: object
                    properties:
                      defined:
                        const: false
                      code:
                        type: string
                      status:
                        type: number
                      message:
                        type: string
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
        '503':
          description: '503'
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    properties:
                      defined:
                        const: true
                      code:
                        const: PROVIDER_UNAVAILABLE
                      status:
                        const: 503
                      message:
                        type: string
                        default: Provider temporarily unavailable
                      data:
                        type: object
                        properties:
                          error:
                            type: string
                          code:
                            const: PROVIDER_UNAVAILABLE
                        required:
                          - error
                          - code
                        additionalProperties: false
                    required:
                      - defined
                      - code
                      - status
                      - message
                  - type: object
                    properties:
                      defined:
                        const: false
                      code:
                        type: string
                      status:
                        type: number
                      message:
                        type: string
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: donate-api-key
      description: >-
        Developer API key. Required for config create/list and project
        analytics. The disabled config DELETE endpoint also requires
        authentication. Optional on public GET reads (anonymous callers are IP
        rate-limited). Obtain from the Developer dashboard.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.