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

# List campaigns

> Returns the offers and coupons of your program. Requires a brand key with scope `network:campaigns:read`.

Returns the offers and coupons of your program. Requires scope `network:campaigns:read`.


## OpenAPI

````yaml api-reference/brand/openapi.json GET /brand/network/campaigns
openapi: 3.1.0
info:
  title: Lomadee Brand API
  version: 1.0.0
  description: >-
    Read-only REST API for brands. Network and white-label programs have
    separate paths and separate keys.
servers:
  - url: https://api.lomadee.com.br
    description: Production
security:
  - x-api-key: []
tags:
  - name: Network
    description: >-
      Your affiliate program on the Lomadee network. Affiliates are never
      identified; only their channels are.
  - name: White label
    description: Your own white-label affiliate program.
paths:
  /brand/network/campaigns:
    get:
      tags:
        - Network
      summary: List campaigns
      description: >-
        Returns the offers and coupons of your program. Requires a brand key
        with scope `network:campaigns:read`.
      parameters:
        - name: page
          in: query
          required: false
          description: Page number.
          schema:
            type: integer
            default: 1
            minimum: 1
        - name: limit
          in: query
          required: false
          description: Items per page. Values above 100 return `400`.
          schema:
            type: integer
            default: 20
            minimum: 1
            maximum: 100
        - name: type
          in: query
          required: false
          description: Filter by campaign type.
          schema:
            type: string
            enum:
              - Offer
              - GenericCoupon
              - PersonalCoupon
        - name: active
          in: query
          required: false
          description: Filter by enabled or disabled campaigns.
          schema:
            type: boolean
      responses:
        '200':
          description: Paginated campaigns
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/X-RateLimit-Reset'
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Campaign'
                  meta:
                    $ref: '#/components/schemas/Meta'
                required:
                  - data
                  - meta
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '429':
          $ref: '#/components/responses/TooManyRequests'
components:
  headers:
    X-RateLimit-Limit:
      description: Requests allowed in the window.
      schema:
        type: integer
    X-RateLimit-Remaining:
      description: Requests left in the window.
      schema:
        type: integer
    X-RateLimit-Reset:
      description: Unix timestamp when the window resets.
      schema:
        type: integer
  schemas:
    Campaign:
      type: object
      properties:
        id:
          type: string
          description: Campaign id.
        name:
          type: string
          description: Campaign name.
        type:
          type: string
          description: Campaign type.
          enum:
            - Offer
            - GenericCoupon
            - PersonalCoupon
        status:
          type: string
          description: Status derived from the period.
          enum:
            - scheduled
            - onTime
            - expired
        active:
          type: boolean
          description: Whether the campaign is enabled.
        isHighlight:
          type: boolean
          description: Whether the campaign is highlighted.
        categories:
          type: array
          items:
            type: string
        url:
          type:
            - string
            - 'null'
          description: Destination URL.
          format: uri
        code:
          type:
            - string
            - 'null'
          description: >-
            Coupon code, for `GenericCoupon`. Always `null` for
            `PersonalCoupon`.
        period:
          type: object
          properties:
            startAt:
              type:
                - string
                - 'null'
              description: Start of the campaign.
              format: date-time
            endAt:
              type:
                - string
                - 'null'
              description: End of the campaign.
              format: date-time
        createdAt:
          type: string
          description: When the campaign was created.
          format: date-time
    Meta:
      type: object
      properties:
        total:
          type: integer
          description: Total items for the filter.
        page:
          type: integer
          description: Current page.
        limit:
          type: integer
          description: Items per page.
        totalPages:
          type: integer
          description: Total pages.
    Error:
      type: object
      properties:
        success:
          type: boolean
          enum:
            - false
        message:
          type: string
          description: Human-readable description.
        code:
          type: string
          description: Error code.
          example: FORBIDDEN
      required:
        - success
        - message
        - code
  responses:
    BadRequest:
      description: Invalid parameter.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            success: false
            message: limit must not be greater than 100
            code: BAD_REQUEST
    Unauthorized:
      description: >-
        Missing, invalid, expired or revoked key, or a key that is not a brand
        key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            success: false
            message: Invalid API key
            code: UNAUTHORIZED
    Forbidden:
      description: The key belongs to the other vertical or lacks the scope of the route.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            success: false
            message: Insufficient scope
            code: FORBIDDEN
    TooManyRequests:
      description: Rate limit exceeded.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            success: false
            message: Too many requests
            code: TOO_MANY_REQUESTS
      headers:
        Retry-After:
          description: Seconds to wait before retrying.
          schema:
            type: integer
  securitySchemes:
    x-api-key:
      type: apiKey
      in: header
      name: x-api-key
      description: Brand key created in the dashboard.

````

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