RescueGroups.org Authentication API

Obtain bearer tokens for authenticated access.

OpenAPI Specification

rescuegroups-org-authentication-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: RescueGroups.org Animals Authentication 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: Authentication
  description: Obtain bearer tokens for authenticated access.
paths:
  /tokens:
    post:
      tags:
      - Authentication
      summary: Create Authentication Token
      description: Obtain a bearer token for authenticated (private data) access.
      operationId: createToken
      security: []
      requestBody:
        content:
          application/vnd.api+json:
            schema:
              $ref: '#/components/schemas/TokenRequest'
      responses:
        '201':
          description: Token created successfully.
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/TokenResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  responses:
    Unauthorized:
      description: Missing or invalid authorization.
      content:
        application/vnd.api+json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    BadRequest:
      description: Invalid request parameters.
      content:
        application/vnd.api+json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  schemas:
    TokenResponse:
      type: object
      properties:
        data:
          type: object
          properties:
            id:
              type: string
              description: Token ID.
            attributes:
              type: object
              properties:
                token:
                  type: string
                  description: Bearer authentication token.
                expiration:
                  type: string
                  format: date-time
                  description: Token expiration timestamp.
    TokenRequest:
      type: object
      required:
      - username
      - password
      properties:
        username:
          type: string
          description: RescueGroups.org account username.
        password:
          type: string
          description: RescueGroups.org account password.
    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.