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

# Show a public trip participant profile

> Returns a public profile for one active trip participant. The controller extracts the participant id from the slug, respects the trip visibility opt-out setting, and hides or masks donation totals and donor names according to trip settings. Public checkout pages use the returned `entity_id`, `program_id`, `setting_id`, and `client_id` to donate to the participant.



## OpenAPI

````yaml get /frontend/public/trips/{clientSlugOrId}/{tripSlug}/participants/{participantSlug}
openapi: 3.0.0
info:
  title: Gratona API
  description: >-
    REST API for the Gratona fundraising platform, including donor, donation,
    sponsorship, program, event, and integration workflows. Endpoints are
    organized by tag. Most endpoints require either a Passport bearer token or
    an issued API key — see the Security Schemes section.
  contact:
    name: Gratona Engineering
    url: https://gratona.com
    email: devs@gratona.com
  version: 1.0.0
servers:
  - url: https://api.gratona.com/v1
    description: Server Version 1.0.0
security: []
tags:
  - name: Auth
    description: >-
      Login, signup, logout, password reset, and email verification for admin
      users and donors.
  - name: Donors
    description: >-
      Donor records: CRUD, profile fields, household linkage, search, filters,
      merge, and duplicate detection.
  - name: Donations
    description: >-
      Individual donation records, recurring commitments, soft credits, refunds,
      designations, and exports.
  - name: Sponsorships
    description: >-
      Donor-to-entity sponsorship relationships, lifecycle transitions, and
      sponsorship-specific filters.
  - name: Entities
    description: >-
      Recipient records (children, families, projects, animals, etc.), their
      status, and entity-level fields.
  - name: Programs
    description: >-
      Program / campaign configuration: hierarchy, settings, and program-level
      metadata.
  - name: Forms
    description: >-
      Custom form builder (HysForm), form fields, standardized donor fields, and
      field migrations.
  - name: Trips
    description: >-
      Mission-trip management: trips, participants, budgets, tasks,
      e-signatures, fundraising milestones, and background checks.
  - name: Communications
    description: >-
      Email templates, SMS, newsletters, donor email manager, and per-donor
      notes.
  - name: Payments
    description: >-
      Payment-gateway management (Stripe, PayPal, Flutterwave, QuickBooks).
      Excludes inbound webhooks — see the Webhooks tag.
  - name: Reports
    description: Dashboards, analytics, scheduled reports, and exports.
  - name: Admin
    description: >-
      Client-account administration: users, groups/permissions, settings,
      integrations, and account lifecycle.
  - name: Donor Portal
    description: >-
      Endpoints consumed by the donor-facing portal (donor login, dashboard,
      donation history, messages).
  - name: Recipient Portal
    description: Endpoints consumed by the recipient-facing portal.
  - name: Public
    description: >-
      Unauthenticated public endpoints: donor signup, public trip pages,
      peer-to-peer campaigns, public checkout.
  - name: Webhooks
    description: >-
      Inbound webhooks from third parties (Stripe, PayPal, Flutterwave, Checkr,
      DropboxSign). Annotated minimally for reference; payload shapes are owned
      by the upstream provider.
  - name: Client
    description: Client
  - name: Email Settings
    description: Email Settings
  - name: Admin Dashboard
    description: Admin Dashboard
  - name: Historical Archived Updates
    description: Historical Archived Updates
  - name: Team & access
    description: Team & access
  - name: Files
    description: Files
  - name: Wrapped
    description: Wrapped
  - name: Donor SignUp
    description: Donor SignUp
  - name: Frontend
    description: Frontend
  - name: User
    description: User
paths:
  /frontend/public/trips/{clientSlugOrId}/{tripSlug}/participants/{participantSlug}:
    get:
      tags:
        - Public
      summary: Show a public trip participant profile
      description: >-
        Returns a public profile for one active trip participant. The controller
        extracts the participant id from the slug, respects the trip visibility
        opt-out setting, and hides or masks donation totals and donor names
        according to trip settings. Public checkout pages use the returned
        `entity_id`, `program_id`, `setting_id`, and `client_id` to donate to
        the participant.
      operationId: showPublicTripParticipant
      parameters:
        - name: clientSlugOrId
          in: path
          description: >-
            Organization identifier from the public trip URL. Numeric values are
            treated as client ids; non-numeric values are matched to
            organization slugs.
          required: true
          schema:
            type: string
          example: acme-foundation
        - name: tripSlug
          in: path
          description: >-
            Trip slug within the resolved client. The trip must be `active` or
            `completed` to be visible.
          required: true
          schema:
            type: string
          example: guatemala-summer-2026
        - name: participantSlug
          in: path
          description: >-
            Participant slug in `name-id` format. The trailing id selects the
            active participant record after visibility rules are applied.
          required: true
          schema:
            type: string
          example: sam-taylor-9001
      responses:
        '200':
          description: Public participant profile.
          content:
            application/json:
              schema:
                required:
                  - id
                  - name
                  - slug
                  - trip
                  - entity_id
                  - program_id
                  - client_id
                properties:
                  id:
                    description: Trip participant id.
                    type: integer
                    example: 9001
                  name:
                    description: Public participant display name.
                    type: string
                    example: Sam Taylor
                  slug:
                    description: Slug supplied in the route.
                    type: string
                    example: sam-taylor-9001
                  bio:
                    type: string
                    example: I am raising support for this trip.
                    nullable: true
                  video_url:
                    type: string
                    example: https://www.youtube.com/watch?v=abc123
                    nullable: true
                  social_links:
                    description: Public participant social links stored on the participant.
                    type: object
                    nullable: true
                  individual_goal:
                    type: number
                    format: float
                    example: 2500
                    nullable: true
                  total_raised:
                    type: number
                    format: float
                    example: 850
                    nullable: true
                  progress_percent:
                    type: number
                    format: float
                    example: 34
                    nullable: true
                  photo:
                    properties:
                      id:
                        type: integer
                        example: 8801
                      url:
                        type: string
                        example: https://s3-us-west-1.amazonaws.com/hys/profile.jpg
                        nullable: true
                      name:
                        type: string
                        example: profile.jpg
                        nullable: true
                    type: object
                    nullable: true
                  photo_url:
                    type: string
                    example: https://s3-us-west-1.amazonaws.com/hys/profile.jpg
                    nullable: true
                  trip:
                    properties:
                      id:
                        type: integer
                        example: 512
                      name:
                        type: string
                        example: Guatemala Summer 2026
                      slug:
                        type: string
                        example: guatemala-summer-2026
                      destination:
                        type: string
                        example: Antigua, Guatemala
                        nullable: true
                      start_date:
                        type: string
                        format: date
                        example: '2026-06-15'
                        nullable: true
                      end_date:
                        type: string
                        format: date
                        example: '2026-06-29'
                        nullable: true
                      show_donation_amounts:
                        type: boolean
                        example: true
                      show_donor_names:
                        type: string
                        enum:
                          - full
                          - first_initial
                          - anonymous
                        example: first_initial
                      show_participant_goals:
                        type: boolean
                        example: true
                      allow_recurring_donations:
                        type: boolean
                        example: true
                      completed_accept_donations:
                        type: boolean
                        example: true
                      accepts_donations:
                        type: boolean
                        example: true
                    type: object
                  recent_donations:
                    description: >-
                      Up to ten recent participant donations with amount and
                      donor name masked according to trip settings.
                    type: array
                    items:
                      properties:
                        amount:
                          type: number
                          format: float
                          example: 75
                          nullable: true
                        donor_name:
                          type: string
                          example: A.
                        created_at:
                          type: string
                          format: date-time
                          example: '2026-05-06T12:00:00Z'
                        created_at_human:
                          type: string
                          example: 2 hours ago
                      type: object
                  entity_id:
                    description: Entity id used as checkout designation.
                    type: integer
                    example: 4811
                    nullable: true
                  program_id:
                    description: Program id from the participant entity.
                    type: integer
                    example: 77
                    nullable: true
                  setting_id:
                    description: >-
                      Checkout setting id resolved from trip settings, fund
                      entity program, or participant entity program.
                    type: integer
                    example: 901
                    nullable: true
                  client_id:
                    description: Owning client id.
                    type: integer
                    example: 207
                type: object
        '404':
          description: Organization, visible trip, or public participant was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundResponse'
      security: []
components:
  schemas:
    NotFoundResponse:
      title: NotFoundResponse
      description: >-
        Returned with HTTP 404 when a resource lookup misses (typically because
        the id doesn't exist OR is scoped to a different `client_id`). Note:
        many endpoints intentionally collapse 'not found' and 'forbidden' into a
        single 404 to avoid leaking which records exist in another tenant.
      required:
        - message
      properties:
        message:
          description: >-
            Human-readable message. Often a more specific string like `Donor not
            found` or `Trip not found`.
          type: string
          example: Not Found
        status:
          type: string
          example: error
      type: object

````

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