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

# Add credentials

> Bulk add new credentials to a specific account offer. Duplicate credentials within the same account offer are automatically skipped. Only available for non-legacy accounts.



## OpenAPI

````yaml /api/openapi.json post /v2/account-offers/{account}/credentials
openapi: 3.1.0
info:
  title: GameBoost
  version: 2.0.0
servers:
  - url: https://api.gameboost.com
    description: GameBoost API
security:
  - BearerTokenSecurityScheme: []
tags:
  - name: Games
    description: Games
  - name: Seller Breaks
    description: Seller Breaks
  - name: Payments
    description: Payments
  - name: Payouts
    description: Payouts
  - name: Account Offers
    description: Account Offers
  - name: Account Orders
    description: Account Orders
  - name: Item Offers
    description: Item Offers
  - name: Item Orders
    description: Item Orders
  - name: Currency Offers
    description: Currency Offers
  - name: Currency Orders
    description: Currency Orders
  - name: Webhooks
    description: Webhook events sent to your endpoints when specific actions occur
  - name: Gift Card Offers
    description: Gift Card Offers
  - name: Gift Card Orders
    description: Gift Card Orders
paths:
  /v2/account-offers/{account}/credentials:
    post:
      tags:
        - Account Offer Credentials
      summary: Add credentials
      description: >-
        Bulk add new credentials to a specific account offer. Duplicate
        credentials within the same account offer are automatically skipped.
        Only available for non-legacy accounts.
      parameters:
        - name: account
          in: path
          description: The ID of the account offer
          required: true
          schema:
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
                - credentials
              properties:
                credentials:
                  description: Array of credential strings to add
                  type: array
                  items:
                    type: string
                    maxLength: 500
                  minItems: 1
                  example:
                    - |-
                      Login: newuser1
                      Password: pass123
                    - |-
                      Login: newuser2
                      Password: pass456
      responses:
        '201':
          description: Credentials added successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: 2 credentials added successfully.
                  created_count:
                    description: Number of credentials created
                    type: integer
                    example: 2
                  duplicate_count:
                    description: Number of duplicate credentials skipped
                    type: integer
                    example: 0
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/AccountOfferCredentialItem'
        '401':
          $ref: '#/components/responses/ErrorUnauthenticated'
        '403':
          $ref: '#/components/responses/ErrorForbidden'
        '422':
          $ref: '#/components/responses/ErrorValidation'
        '429':
          $ref: '#/components/responses/ErrorRateLimited'
      security:
        - BearerToken: []
components:
  schemas:
    AccountOfferCredentialItem:
      description: A single credential entry for an account offer (new format)
      type: object
      properties:
        id:
          description: Unique identifier for the credential
          type: integer
        credentials:
          description: The credential string content
          type: string
        account_offer_id:
          description: ID of the parent account offer
          type: integer
        account_order_id:
          description: ID of the order this credential was sold to, null if unsold
          type: integer
          nullable: true
        is_sold:
          description: Whether this credential has been sold (assigned to an order)
          type: boolean
        created_at:
          description: Unix timestamp when the credential was created
          type: integer
        updated_at:
          description: Unix timestamp of the last modification
          type: integer
  responses:
    ErrorUnauthenticated:
      description: >-
        User is not authenticated, happens when the API key is missing, expired
        or invalid
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
                example: Unauthenticated.
    ErrorForbidden:
      description: >-
        User is not authorized to perform this action, happens when you try to
        access a resource you do not have permission to access
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
                example: This action is unauthorized.
    ErrorValidation:
      description: Validation errors, happens when the request data is invalid
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
                example: The given data was invalid.
              errors:
                type: object
                additionalProperties:
                  type: array
                  items:
                    type: string
                example:
                  field:
                    - Something is wrong with this field!
    ErrorRateLimited:
      description: >-
        Rate limit exceeded, happens when you exceed the rate limit for the
        endpoint
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
                example: Too many requests.
  securitySchemes:
    BearerToken:
      type: http
      scheme: bearer
      bearerFormat: JWT

````