PayPal Products API

Use `/products` resource to create and manage products.

Operations 4

POST /v1/catalogs/products Paypal Create product #
GET /v1/catalogs/products Paypal List products #
GET /v1/catalogs/products/{product_id} Paypal Show product details #
PATCH /v1/catalogs/products/{product_id} Paypal Update product #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/paypal-products-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

paypal-products-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Paypal Subscriptions Authorizations Products API
  description: You can use billing plans and subscriptions to create subscriptions that process recurring PayPal payments for physical or digital goods, or services. A plan includes pricing and billing cycle information that defines the amount and frequency of charge for a subscription. You can also define a fixed plan, such as a $5 basic plan or a volume- or graduated-based plan with pricing tiers based on the quantity purchased. For more information, see <a href="/docs/subscriptions/">Subscriptions Overview</a>.
  version: '1.6'
  contact: {}
servers:
- url: https://api-m.sandbox.paypal.com
  description: PayPal Sandbox Environment
- url: https://api-m.paypal.com
  description: PayPal Live Environment
tags:
- name: Products
  description: Use `/products` resource to create and manage products.
paths:
  /v1/catalogs/products:
    post:
      summary: Paypal Create product
      description: Creates a product.
      operationId: products.create
      responses:
        '200':
          description: A successful request returns the HTTP `200 OK` status code and a JSON response body that shows product details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/product'
        '201':
          description: A successful request returns the HTTP `201 Created` status code and a JSON response body that shows product details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/product'
        '400':
          description: Bad Request. Request is not well-formed, syntactically incorrect, or violates schema.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/error_400'
                - $ref: '#/components/schemas/products.create-400'
        '401':
          description: Authentication failed due to missing authorization header, or invalid authentication credentials.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/error_401'
                - $ref: '#/components/schemas/401'
        '403':
          description: Authorization failed due to insufficient permissions.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/error_403'
                - $ref: '#/components/schemas/403'
        '422':
          description: The requested action could not be performed, semantically incorrect, or failed business validation.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/error_422'
                - $ref: '#/components/schemas/422'
        '500':
          description: An internal server error has occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_500'
        default:
          $ref: '#/components/responses/default'
      parameters:
      - $ref: '#/components/parameters/prefer'
      - $ref: '#/components/parameters/paypal_request_id'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/product_request_POST'
            examples:
              product_request_POST:
                value:
                  name: Video Streaming Service
                  description: Video streaming service
                  type: SERVICE
                  category: SOFTWARE
                  image_url: https://example.com/streaming.jpg
                  home_url: https://example.com/home
      security:
      - Oauth2:
        - https://uri.paypal.com/services/subscriptions
      tags:
      - Products
    get:
      summary: Paypal List products
      description: Lists products.
      operationId: products.list
      responses:
        '200':
          description: A successful request returns the HTTP `200 OK` status code and a JSON response body that lists products with details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/product_collection'
        '400':
          description: Bad Request. Request is not well-formed, syntactically incorrect, or violates schema.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/error_400'
                - $ref: '#/components/schemas/400'
        '401':
          description: Authentication failed due to missing authorization header, or invalid authentication credentials.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/error_401'
                - $ref: '#/components/schemas/401'
        '403':
          description: Authorization failed due to insufficient permissions.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/error_403'
                - $ref: '#/components/schemas/403'
        '500':
          description: An internal server error has occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_500'
        default:
          $ref: '#/components/responses/default'
      parameters:
      - $ref: '#/components/parameters/page_size'
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/total_required'
      security:
      - Oauth2:
        - https://uri.paypal.com/services/subscriptions
      tags:
      - Products
  /v1/catalogs/products/{product_id}:
    get:
      summary: Paypal Show product details
      description: Shows details for a product, by ID.
      operationId: products.get
      responses:
        '200':
          description: A successful request returns the HTTP `200 OK` status code and a JSON response body that shows product details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/product'
        '401':
          description: Authentication failed due to missing authorization header, or invalid authentication credentials.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/error_401'
                - $ref: '#/components/schemas/401'
        '403':
          description: Authorization failed due to insufficient permissions.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/error_403'
                - $ref: '#/components/schemas/403'
        '404':
          description: The specified resource does not exist.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/error_404'
                - $ref: '#/components/schemas/404'
        '500':
          description: An internal server error has occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_500'
        default:
          $ref: '#/components/responses/default'
      parameters:
      - $ref: '#/components/parameters/product_id'
      security:
      - Oauth2:
        - https://uri.paypal.com/services/subscriptions
      tags:
      - Products
    patch:
      summary: Paypal Update product
      description: Updates a product, by ID. You can patch these attributes and objects:<table><thead><tr><th>Attribute or object</th><th>Operations</th></tr></thead><tbody><tr><td><code>description</code></td><td>add, replace, remove</td></tr><tr><td><code>category</code></td><td>add, replace, remove</td></tr><tr><td><code>image_url</code></td><td>add, replace, remove</td></tr><tr><td><code>home_url</code></td><td>add, replace, remove</td></tr></tbody></table>
      operationId: products.patch
      responses:
        '204':
          description: A successful request returns the HTTP `204 No Content` status code with no JSON response body.
        '400':
          description: Bad Request. Request is not well-formed, syntactically incorrect, or violates schema.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/error_400'
                - $ref: '#/components/schemas/products.patch-400'
        '401':
          description: Authentication failed due to missing authorization header, or invalid authentication credentials.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/error_401'
                - $ref: '#/components/schemas/401'
        '403':
          description: Authorization failed due to insufficient permissions.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/error_403'
                - $ref: '#/components/schemas/403'
        '404':
          description: The specified resource does not exist.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/error_404'
                - $ref: '#/components/schemas/404'
        '422':
          description: The requested action could not be performed, semantically incorrect, or failed business validation.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/error_422'
                - $ref: '#/components/schemas/products.patch-422'
        '500':
          description: An internal server error has occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_500'
        default:
          $ref: '#/components/responses/default'
      parameters:
      - $ref: '#/components/parameters/product_id'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/patch_request'
            examples:
              patch_request:
                value:
                - op: replace
                  path: /description
                  value: Premium video streaming service
      security:
      - Oauth2:
        - https://uri.paypal.com/services/subscriptions
      tags:
      - Products
components:
  schemas:
    error_500:
      type: object
      title: Internal Server Error
      description: This is either a system or application error, and generally indicates that although the client appeared to provide a correct request, something unexpected has gone wrong on the server.
      properties:
        name:
          type: string
          enum:
          - INTERNAL_SERVER_ERROR
        message:
          type: string
          enum:
          - An internal server error occurred.
        debug_id:
          type: string
          description: The PayPal internal ID. Used for correlation purposes.
        links:
          description: An array of request-related [HATEOAS links](https://en.wikipedia.org/wiki/HATEOAS).
          type: array
          minItems: 0
          maxItems: 10000
          items:
            $ref: '#/components/schemas/error_link_description'
      example:
        name: INTERNAL_SERVER_ERROR
        message: An internal server error occurred.
        debug_id: 90957fca61718
        links:
        - href: https://developer.paypal.com/api/orders/v2/#error-INTERNAL_SERVER_ERROR
          rel: information_link
    link_description:
      type: object
      title: Link Description
      description: The request-related [HATEOAS link](/docs/api/reference/api-responses/#hateoas-links) information.
      required:
      - href
      - rel
      properties:
        href:
          type: string
          description: The complete target URL. To make the related call, combine the method with this [URI Template-formatted](https://tools.ietf.org/html/rfc6570) link. For pre-processing, include the `$`, `(`, and `)` characters. The `href` is the key HATEOAS component that links a completed call with a subsequent call.
        rel:
          type: string
          description: The [link relation type](https://tools.ietf.org/html/rfc5988#section-4), which serves as an ID for a link that unambiguously describes the semantics of the link. See [Link Relations](https://www.iana.org/assignments/link-relations/link-relations.xhtml).
        method:
          type: string
          description: The HTTP method required to make the related call.
          enum:
          - GET
          - POST
          - PUT
          - DELETE
          - HEAD
          - CONNECT
          - OPTIONS
          - PATCH
    '404':
      properties:
        details:
          type: array
          items:
            anyOf:
            - title: INVALID_RESOURCE_ID
              properties:
                issue:
                  type: string
                  enum:
                  - INVALID_RESOURCE_ID
                description:
                  type: string
                  enum:
                  - Specified resource ID does not exist. Please check the resource ID and try again.
    date_time:
      type: string
      description: The date and time, in [Internet date and time format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are required while fractional seconds are optional.<blockquote><strong>Note:</strong> The regular expression provides guidance but does not reject all invalid dates.</blockquote>
      format: ppaas_date_time_v3
      minLength: 20
      maxLength: 64
      pattern: ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])[T,t]([0-1][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)([.][0-9]+)?([Zz]|[+-][0-9]{2}:[0-9]{2})$
    error_400:
      type: object
      title: Bad Request Error
      description: Request is not well-formed, syntactically incorrect, or violates schema.
      properties:
        name:
          type: string
          enum:
          - INVALID_REQUEST
        message:
          type: string
          enum:
          - Request is not well-formed, syntactically incorrect, or violates schema.
        details:
          type: array
          items:
            $ref: '#/components/schemas/error_details'
        debug_id:
          type: string
          description: The PayPal internal ID. Used for correlation purposes.
        links:
          description: An array of request-related [HATEOAS links](https://en.wikipedia.org/wiki/HATEOAS).
          type: array
          minItems: 0
          maxItems: 10000
          items:
            $ref: '#/components/schemas/error_link_description'
    error_details:
      title: Error Details
      type: object
      description: The error details. Required for client-side `4XX` errors.
      properties:
        field:
          type: string
          description: The field that caused the error. If this field is in the body, set this value to the field's JSON pointer value. Required for client-side errors.
        value:
          type: string
          description: The value of the field that caused the error.
        location:
          $ref: '#/components/schemas/error_location'
        issue:
          type: string
          description: The unique, fine-grained application-level error code.
        description:
          type: string
          description: The human-readable description for an issue. The description can change over the lifetime of an API, so clients must not depend on this value.
      required:
      - issue
    product:
      title: Product Details
      description: The product details.
      type: object
      properties:
        id:
          type: string
          description: The ID of the product.
          minLength: 6
          maxLength: 50
        name:
          type: string
          description: The product name.
          minLength: 1
          maxLength: 127
        description:
          type: string
          description: The product description.
          minLength: 1
          maxLength: 256
        type:
          type: string
          description: The product type. Indicates whether the product is physical or digital goods, or a service.
          minLength: 1
          maxLength: 24
          pattern: ^[A-Z_]+$
          default: PHYSICAL
          enum:
          - PHYSICAL
          - DIGITAL
          - SERVICE
        category:
          $ref: '#/components/schemas/product_category'
        image_url:
          type: string
          format: uri
          minLength: 1
          maxLength: 2000
          description: The image URL for the product.
        home_url:
          type: string
          format: uri
          minLength: 1
          maxLength: 2000
          description: The home page URL for the product.
        create_time:
          description: The date and time when the product was created, in [Internet date and time format](https://tools.ietf.org/html/rfc3339#section-5.6).
          readOnly: true
          $ref: '#/components/schemas/date_time'
        update_time:
          description: The date and time when the product was last updated, in [Internet date and time format](https://tools.ietf.org/html/rfc3339#section-5.6).
          readOnly: true
          $ref: '#/components/schemas/date_time'
        links:
          type: array
          description: An array of request-related [HATEOAS links](/docs/api/overview/#hateoas-links).
          readOnly: true
          items:
            $ref: '#/components/schemas/link_description'
            readOnly: true
    '403':
      properties:
        details:
          type: array
          items:
            anyOf:
            - title: PERMISSION_DENIED
              properties:
                issue:
                  type: string
                  enum:
                  - PERMISSION_DENIED
                description:
                  type: string
                  enum:
                  - You do not have permission to access or perform operations on this resource.
    '401':
      properties:
        details:
          type: array
          items:
            anyOf:
            - title: INVALID_ACCOUNT_STATUS
              properties:
                issue:
                  type: string
                  enum:
                  - INVALID_ACCOUNT_STATUS
                description:
                  type: string
                  enum:
                  - Account validations failed for the user.
    patch_request:
      type: array
      title: Patch Request
      description: An array of JSON patch objects to apply partial updates to resources.
      items:
        $ref: '#/components/schemas/patch'
    product_request_POST:
      title: Create Product Request
      description: The create product request details.
      type: object
      properties:
        id:
          type: string
          description: The ID of the product. You can specify the SKU for the product. If you omit the ID, the system generates it. System-generated IDs have the `PROD-` prefix.
          minLength: 6
          maxLength: 50
        name:
          type: string
          description: The product name.
          minLength: 1
          maxLength: 127
        description:
          type: string
          description: The product description.
          minLength: 1
          maxLength: 256
        type:
          type: string
          description: The product type. Indicates whether the product is physical or digital goods, or a service.
          minLength: 1
          maxLength: 24
          pattern: ^[A-Z_]+$
          default: PHYSICAL
          enum:
          - PHYSICAL
          - DIGITAL
          - SERVICE
        category:
          $ref: '#/components/schemas/product_category'
        image_url:
          type: string
          format: uri
          minLength: 1
          maxLength: 2000
          description: The image URL for the product.
        home_url:
          type: string
          format: uri
          minLength: 1
          maxLength: 2000
          description: The home page URL for the product.
      required:
      - name
      - type
    error_401:
      type: object
      title: Unauthorized Error
      description: Authentication failed due to missing Authorization header, or invalid authentication credentials.
      properties:
        name:
          type: string
          enum:
          - AUTHENTICATION_FAILURE
        message:
          type: string
          enum:
          - Authentication failed due to missing authorization header, or invalid authentication credentials.
        details:
          type: array
          items:
            $ref: '#/components/schemas/error_details'
        debug_id:
          type: string
          description: The PayPal internal ID. Used for correlation purposes.
        links:
          description: An array of request-related [HATEOAS links](https://en.wikipedia.org/wiki/HATEOAS).
          type: array
          minItems: 0
          maxItems: 10000
          items:
            $ref: '#/components/schemas/error_link_description'
    product_collection:
      title: Product Collection
      description: The list of products, with details.
      type: object
      properties:
        products:
          type: array
          description: An array of products.
          minItems: 1
          maxItems: 32767
          items:
            $ref: '#/components/schemas/product_collection_element'
        total_items:
          type: integer
          description: The total number of items.
          minimum: 0
          maximum: 500000000
        total_pages:
          type: integer
          description: The total number of pages.
          minimum: 0
          maximum: 100000000
        links:
          type: array
          description: An array of request-related [HATEOAS links](/docs/api/overview/#hateoas-links).
          readOnly: true
          items:
            $ref: '#/components/schemas/link_description'
            readOnly: true
    error_503:
      type: object
      title: Service Unavailable Error
      description: The server is temporarily unable to handle the request, for example, because of planned maintenance or downtime.
      properties:
        name:
          type: string
          enum:
          - SERVICE_UNAVAILABLE
        message:
          type: string
          enum:
          - Service Unavailable.
        debug_id:
          type: string
          description: The PayPal internal ID. Used for correlation purposes.
        links:
          description: An array of request-related [HATEOAS links](https://en.wikipedia.org/wiki/HATEOAS).
          type: array
          minItems: 0
          maxItems: 10000
          items:
            $ref: '#/components/schemas/error_link_description'
      example:
        name: SERVICE_UNAVAILABLE
        message: Service Unavailable.
        debug_id: 90957fca61718
        information_link: https://developer.paypal.com/docs/api/orders/v2/#error-SERVICE_UNAVAILABLE
    products.patch-422:
      properties:
        details:
          type: array
          items:
            anyOf:
            - title: USER_ACCOUNT_CLOSED
              properties:
                issue:
                  type: string
                  enum:
                  - USER_ACCOUNT_CLOSED
                description:
                  type: string
                  enum:
                  - User account locked or closed.
            - title: DUPLICATE_RESOURCE_IDENTIFIER
              properties:
                issue:
                  type: string
                  enum:
                  - DUPLICATE_RESOURCE_IDENTIFIER
                description:
                  type: string
                  enum:
                  - Identifier must be unique.
    products.patch-400:
      properties:
        details:
          type: array
          items:
            anyOf:
            - title: MISSING_REQUIRED_PARAMETER
              properties:
                issue:
                  type: string
                  enum:
                  - MISSING_REQUIRED_PARAMETER
                description:
                  type: string
                  enum:
                  - A required field is missing.
            - title: UNSUPPORTED_PATCH_OPERATION
              properties:
                issue:
                  type: string
                  enum:
                  - UNSUPPORTED_PATCH_OPERATION
                description:
                  type: string
                  enum:
                  - The specified patch operation not supported for this field.
            - title: INVALID_PATCH_PATH
              properties:
                issue:
                  type: string
                  enum:
                  - INVALID_PATCH_PATH
                description:
                  type: string
                  enum:
                  - The specified field cannot be patched.
            - title: INVALID_PARAMETER_SYNTAX
              properties:
                issue:
                  type: string
                  enum:
                  - INVALID_PARAMETER_SYNTAX
                description:
                  type: string
                  enum:
                  - The value of a field does not conform to the expected format.
            - title: INVALID_PARAMETER_VALUE
              properties:
                issue:
                  type: string
                  enum:
                  - INVALID_PARAMETER_VALUE
                description:
                  type: string
                  enum:
                  - The value of a field is invalid.
    product_category:
      type: string
      description: The product category.
      title: Product Category
      minLength: 4
      maxLength: 256
      pattern: ^[A-Z_]+$
      enum:
      - AC_REFRIGERATION_REPAIR
      - ACADEMIC_SOFTWARE
      - ACCESSORIES
      - ACCOUNTING
      - ADULT
      - ADVERTISING
      - AFFILIATED_AUTO_RENTAL
      - AGENCIES
      - AGGREGATORS
      - AGRICULTURAL_COOPERATIVE_FOR_MAIL_ORDER
      - AIR_CARRIERS_AIRLINES
      - AIRLINES
      - AIRPORTS_FLYING_FIELDS
      - ALCOHOLIC_BEVERAGES
      - AMUSEMENT_PARKS_CARNIVALS
      - ANIMATION
      - ANTIQUES
      - APPLIANCES
      - AQUARIAMS_SEAQUARIUMS_DOLPHINARIUMS
      - ARCHITECTURAL_ENGINEERING_AND_SURVEYING_SERVICES
      - ART_AND_CRAFT_SUPPLIES
      - ART_DEALERS_AND_GALLERIES
      - ARTIFACTS_GRAVE_RELATED_AND_NATIVE_AMERICAN_CRAFTS
      - ARTS_AND_CRAFTS
      - ARTS_CRAFTS_AND_COLLECTIBLES
      - AUDIO_BOOKS
      - AUTO_ASSOCIATIONS_CLUBS
      - AUTO_DEALER_USED_ONLY
      - AUTO_RENTALS
      - AUTO_SERVICE
      - AUTOMATED_FUEL_DISPENSERS
      - AUTOMOBILE_ASSOCIATIONS
      - AUTOMOTIVE
      - AUTOMOTIVE_REPAIR_SHOPS_NON_DEALER
      - AUTOMOTIVE_TOP_AND_BODY_SHOPS
      - AVIATION
      - BABIES_CLOTHING_AND_SUPPLIES
      - BABY
      - BANDS_ORCHESTRAS_ENTERTAINERS
      - BARBIES
      - BATH_AND_BODY
      - BATTERIES
      - BEAN_BABIES
      - BEAUTY
      - BEAUTY_AND_FRAGRANCES
      - BED_AND_BATH
      - BICYCLE_SHOPS_SALES_AND_SERVICE
      - BICYCLES_AND_ACCESSORIES
      - BILLIARD_POOL_ESTABLISHMENTS
      - BOAT_DEALERS
      - BOAT_RENTALS_AND_LEASING
      - BOATING_SAILING_AND_ACCESSORIES
      - BOOKS
      - BOOKS_AND_MAGAZINES
      - BOOKS_MANUSCRIPTS
      - BOOKS_PERIODICALS_AND_NEWSPAPERS
      - BOWLING_ALLEYS
      - BULLETIN_BOARD
      - BUS_LINE
      - BUS_LINES_CHARTERS_TOUR_BUSES
      - BUSINESS
      - BUSINESS_AND_SECRETARIAL_SCHOOLS
      - BUYING_AND_SHOPPING_SERVICES_AND_CLUBS
      - CABLE_SATELLITE_AND_OTHER_PAY_TELEVISION_AND_RADIO_SERVICES
      - CABLE_SATELLITE_AND_OTHER_PAY_TV_AND_RADIO
      - CAMERA_AND_PHOTOGRAPHIC_SUPPLIES
      - CAMERAS
      - CAMERAS_AND_PHOTOGRAPHY
      - CAMPER_RECREATIONAL_AND_UTILITY_TRAILER_DEALERS
      - CAMPING_AND_OUTDOORS
      - CAMPING_AND_SURVIVAL
      - CAR_AND_TRUCK_DEALERS
      - CAR_AND_TRUCK_DEALERS_USED_ONLY
      - CAR_AUDIO_AND_ELECTRONICS
      - CAR_RENTAL_AGENCY
      - CATALOG_MERCHANT
      - CATALOG_RETAIL_MERCHANT
      - CATERING_SERVICES
      - CHARITY
      - CHECK_CASHIER
      - CHILD_CARE_SERVICES
      - CHILDREN_BOOKS
      - CHIROPODISTS_PODIATRISTS
      - CHIROPRACTORS
      - CIGAR_STORES_AND_STANDS
      - CIVIC_SOCIAL_FRATERNAL_ASSOCIATIONS
      - CIVIL_SOCIAL_FRAT_ASSOCIATIONS
      - CLOTHING
      - CLOTHING_ACCESSORIES_AND_SHOES
      - CLOTHING_RENTAL
      - COFFEE_AND_TEA
      - COIN_OPERATED_BANKS_AND_CASINOS
      - COLLECTIBLES
      - COLLECTION_AGENCY
      - COLLEGES_AND_UNIVERSITIES
      - COMMERCIAL_EQUIPMENT
      - COMMERCIAL_FOOTWEAR
      - COMMERCIAL_PHOTOGRAPHY
      - COMMERCIAL_PHOTOGRAPHY_ART_AND_GRAPHICS
      - COMMERCIAL_SPORTS_PROFESSIONA
      - COMMODITIES_AND_FUTURES_EXCHANGE
      - COMPUTER_AND_DATA_PROCESSING_SERVICES
      - COMPUTER_HARDWARE_AND_SOFTWARE
      - COMPUTER_MAINTENANCE_REPAIR_AND_SERVICES_NOT_ELSEWHERE_CLAS
      - CONSTRUCTION
      - CONSTRUCTION_MATERIALS_NOT_ELSEWHERE_CLASSIFIED
      - CONSULTING_SERVICES
      - CONSUMER_CREDIT_REPORTING_AGENCIES
      - CONVALESCENT_HOMES
      - COSMETIC_STORES
      - COUNSELING_SERVICES_DEBT_MARRIAGE_PERSONAL
      - COUNTERFEIT_CURRENCY_AND_STAMPS
      - COUNTERFEIT_ITEMS
      - COUNTRY_CLUBS
      - COURIER_SERVICES
      - COURIER_SERVICES_AIR_AND_GROUND_AND_FREIGHT_FORWARDERS
      - COURT_COSTS_ALIMNY_CHILD_SUPT
      - COURT_COSTS_INCLUDING_ALIMONY_AND_CHILD_SUPPORT_COURTS_OF_LAW
      - CREDIT_CARDS
      - CREDIT_UNION
      - CULTURE_AND_RELIGION
      - DAIRY_PRODUCTS_STORES
      - DANCE_HALLS_STUDIOS_AND_SCHOOLS
      - DECORATIVE
      - DENTAL
      - DENTISTS_AND_ORTHODONTISTS
      - DEPARTMENT_STORES
      - DESKTOP_PCS
      - DEVICES
      - DIECAST_TOYS_VEHICLES
      - DIGITAL_GAMES
      - DIGITAL_MEDIA_BOOKS_MOVIES_MUSIC
      - DIRECT_MARKETING
      - DIRECT_MARKETING_CATALOG_MERCHANT
      - DIRECT_MARKETING_INBOUND_TELE
      - DIRECT_MARKETING_OUTBOUND_TELE
      - DIRECT_MARKETING_SUBSCRIPTION
      - DISCOUNT_STORES
      - DOOR_TO_DOOR_SALES
      - DRAPERY_WINDOW_COVERING_AND_UPHOLSTERY
      - DRINKING_PLACES
      - DRUGSTORE
      - DURABLE_GOODS
      - ECOMMERCE_DEVELOPMENT
      - ECOMMERCE_SERVICES
      - EDUCATIONAL_AND_TEXTBOOKS
      - ELECTRIC_RAZOR_STORES
      - ELECTRICAL_AND_SMALL_APPLIANCE_REPAIR
      - ELECTRICAL_CONTRACTORS
      - ELECTRICAL_PARTS_AND_EQUIPMENT
      - ELECTRONIC_CASH
      - ELEMENTARY_AND_SECONDARY_SCHOOLS
      - EMPLOYMENT
      - ENTERTAINERS
      - ENTERTAINMENT_AND_MEDIA
      - EQUIP_TOOL_FURNITURE_AND_APPLIANCE_RENTAL_AND_LEASING
      - ESCROW
      - EVENT_AND_WEDDING_PLANNING
      - EXERCISE_AND_FITNESS
      - EXERCISE_EQUIPMENT
      - EXTERMINATING_AND_DISINFECTING_SERVICES
      - FABRICS_AND_SEWING
      - FAMILY_CLOTHING_STORES
      - FASHION_JEWELRY
      - FAST_FOOD_RESTAURANTS
      - FICTION_AND_NONFICTION
      - FINANCE_COMPANY
      - FINANCIAL_AND_INVESTMENT_ADVICE
      - FINANCIAL_INSTITUTIONS_MERCHANDISE_AND_SERVICES
      - FIREARM_ACCESSORIES
      - FIREARMS_WEAPONS_AND_KNIVES
      - FIREPLACE_AND_FIREPLACE_SCREENS
      - FIREWORKS
      - FISHING
      - FLORISTS
      - FLOWERS
      - FOOD_DRINK_AND_NUTRITION
      - FOOD_PRODUCTS
      - FOOD_RETAIL_AND_SERVICE
      - FRAGRANCES_AND_PERFUMES
      - FREEZER_AND_LOCKER_MEAT_PROVISIONERS
      - FUEL_DEALERS_FUEL_OIL_WOOD_AND_COAL
      - FUEL_DEALERS_NON_AUTOMOTIVE
      - FUNERAL_SERVICES_AND_CREMATORIES
      - FURNISHING_AND_DECORATING
      - FURNITURE
      - FURRIERS_AND_FUR_SHOPS
      - GADGETS_AND_OTHER_ELECTRONICS
      - GAMBLING
      - GAME_SOFTWARE
      - GAMES
      - GARDEN_SUPPLIES
      - GENERAL
      - GENERAL_CONTRACTORS
      - GENERAL_GOVERNMENT
      - GENERAL_SOFTWARE
      - GENERAL_TELECOM
      - GIFTS_AND_FLOWERS
      - GLASS_PAINT_AND_WALLPAPER_STORES
      - GLASSWARE_CRYSTAL_STORES
      - GOVERNMENT
      - GOVERNMENT_IDS_AND_LICENSES
      - GOVERNMENT_LICENSED_ON_LINE_CASINOS_ON_LINE_GAMBLING
      - GOVERNMENT_OWNED_LOTTERIES
      - GOVERNMENT_SERVICES
      - GRAPHIC_AND_COMMERCIAL_DESIGN
      - GREETING_CARDS
      - GROCERY_STORES_AND_SUPERMARKETS
      - HARDWARE_AND_TOOLS

# --- truncated at 32 KB (53 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/paypal/refs/heads/main/openapi/paypal-products-api-openapi.yml