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

# List Campaigns



## OpenAPI

````yaml /api_docs/openapi.yaml get /v1/server/campaigns
openapi: 3.0.3
info:
  title: PlayCamp SDK API
  description: >
    PlayCamp SDK API - Game analytics and creator campaign integration API


    ## Required Integration APIs (Server API)

    3 APIs that must be integrated for campaign operation:

    - `POST /v1/server/sponsors` - User boosts a creator

    - `POST /v1/server/coupons/validate` - Validate coupon code

    - `POST /v1/server/payments` - Register in-game payment


    ## Authentication

    - **Client API**: `Authorization: Bearer {CLIENT_KEY_ID}:{CLIENT_SECRET}`

    - **Server API**: `Authorization: Bearer {SERVER_KEY_ID}:{SERVER_SECRET}`


    ## Servers

    - **Live**: https://sdk-api.playcamp.io (Production data)

    - **Sandbox**: https://sandbox-sdk-api.playcamp.io (Test data)


    ## Key Types

    - **Client Key**: For game client (read-only - campaign, creator queries)

    - **Server Key**: For game server (read/write - coupon redemption, payment
    registration, etc.)


    ## Test Mode (isTest)

    Before campaign launch, use `isTest: true` parameter to test API
    integration.

    - Request parameter validation is performed identically to production

    - Returns mock data without recording to actual DB

    - Verify integration in Sandbox environment before campaign launch, then
    remove `isTest` parameter for actual campaign
  version: 1.1.0
  contact:
    name: PlayCamp Support
servers:
  - url: https://sdk-api.playcamp.io
    description: Live Server
  - url: https://sandbox-sdk-api.playcamp.io
    description: Sandbox Server
  - url: http://localhost:3001
    description: Local Live Server
  - url: http://localhost:3003
    description: Local Sandbox Server
security: []
tags:
  - name: Health
    description: Server health check
  - name: Client Campaign
    description: Campaign queries (Client API)
  - name: Client Creator
    description: Creator queries (Client API)
  - name: Client Coupon
    description: Coupon validation (Client API)
  - name: Client Sponsor
    description: Boost status queries — Sponsor API (Client API)
  - name: Server Campaign
    description: Campaign queries (Server API)
  - name: Server Creator
    description: Creator queries (Server API)
  - name: Server Coupon
    description: Coupon management (Server API)
  - name: Server Sponsor
    description: Boost management — Sponsor API (Server API)
  - name: Server Payment
    description: Payment management (Server API)
  - name: Server Playtime
    description: Playtime session management (Server API)
  - name: Server Webhook
    description: Webhook management (Server API)
  - name: Server Webview
    description: WebView management (Server API)
paths:
  /v1/server/campaigns:
    get:
      tags:
        - Server Campaign
      summary: List Campaigns
      operationId: serverListCampaigns
      parameters:
        - name: page
          in: query
          schema:
            type: integer
            default: 1
        - name: limit
          in: query
          schema:
            type: integer
            default: 20
            maximum: 100
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                required:
                  - data
                  - pagination
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Campaign'
                  pagination:
                    $ref: '#/components/schemas/Pagination'
      security:
        - ServerAuth: []
components:
  schemas:
    Campaign:
      type: object
      properties:
        campaignId:
          type: string
        projectId:
          type: string
        campaignName:
          type: object
          description: >-
            Multilingual campaign name (e.g., {"ko": "캠페인명", "en": "Campaign
            Name"})
          additionalProperties:
            type: string
        description:
          type: object
          description: Multilingual description
          additionalProperties:
            type: string
        startDate:
          type: string
          format: date-time
          nullable: true
        endDate:
          type: string
          format: date-time
          nullable: true
        status:
          type: string
          enum:
            - PENDING_EXPOSURE
            - EXPOSED
            - IN_PROGRESS
            - COMPLETED
            - CANCELLED
    Pagination:
      type: object
      required:
        - page
        - limit
        - total
        - totalPages
      properties:
        page:
          type: integer
          description: Current page number
        limit:
          type: integer
          description: Items per page
        total:
          type: integer
          description: Total item count
        totalPages:
          type: integer
          description: Total page count
  securitySchemes:
    ServerAuth:
      type: http
      scheme: bearer
      description: 'Server API Key (format: {keyId}:{secret})'

````