RescueGroups.org Pet Lists API

Manage organization pet lists.

OpenAPI Specification

rescuegroups-org-pet-lists-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: RescueGroups.org Animals Pet Lists API
  version: 5.0.0
  description: The RescueGroups.org REST API v5 provides access to adoptable pet data including animals, organizations, breeds, species, colors, and patterns. It supports advanced search with geodistance filtering, pagination, and relationship inclusion. API key authorization is used for public data access; bearer token authorization is used for private/write operations.
  contact:
    name: RescueGroups.org Developer Community
    url: https://groups.google.com/a/rescuegroups.org/g/apidev
  license:
    name: RescueGroups.org Terms
    url: https://rescuegroups.org/
servers:
- url: https://api.rescuegroups.org/v5
  description: Production API
- url: https://dev1-api.rescuegroups.org/v5
  description: Development/Test API
security:
- apiKeyAuth: []
tags:
- name: Pet Lists
  description: Manage organization pet lists.
paths:
  /public/petlists/{keystring}:
    get:
      tags:
      - Pet Lists
      summary: Get Pet List
      description: Retrieve a pet list by its keystring.
      operationId: getPetList
      parameters:
      - name: keystring
        in: path
        required: true
        schema:
          type: string
        description: The pet list keystring identifier.
      responses:
        '200':
          description: A pet list.
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/PetListResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      tags:
      - Pet Lists
      summary: Update Pet List
      description: Update a pet list by its keystring.
      operationId: updatePetList
      security:
      - bearerAuth: []
      parameters:
      - name: keystring
        in: path
        required: true
        schema:
          type: string
        description: The pet list keystring identifier.
      requestBody:
        content:
          application/vnd.api+json:
            schema:
              $ref: '#/components/schemas/PetListUpdateRequest'
      responses:
        '200':
          description: Updated pet list.
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/PetListResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  responses:
    Unauthorized:
      description: Missing or invalid authorization.
      content:
        application/vnd.api+json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    NotFound:
      description: Resource not found.
      content:
        application/vnd.api+json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  schemas:
    PetListResponse:
      type: object
      properties:
        data:
          type: object
          properties:
            id:
              type: string
            type:
              type: string
            attributes:
              type: object
              properties:
                keystring:
                  type: string
                name:
                  type: string
    PetListUpdateRequest:
      type: object
      properties:
        data:
          type: object
          properties:
            type:
              type: string
              enum:
              - petlists
            id:
              type: string
            attributes:
              type: object
              additionalProperties: true
    ErrorResponse:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              status:
                type: string
              title:
                type: string
              detail:
                type: string
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: Authorization
      description: API key authorization for public data access.
    bearerAuth:
      type: http
      scheme: bearer
      description: Bearer token for private/authenticated data access.