{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/google-ads/json-schema/google-ads-google-ads-googleads-v25-services-create-product-link-invitation-request-schema.json",
  "title": "GoogleAdsGoogleadsV25Services__CreateProductLinkInvitationRequest",
  "description": "Request message for ProductLinkInvitationService.CreateProductLinkInvitation.",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/google-ads-customers-productlinkinvitations-api-openapi.yml#/components/schemas/GoogleAdsGoogleadsV25Services__CreateProductLinkInvitationRequest",
  "type": "object",
  "properties": {
    "productLinkInvitation": {
      "description": "Required. The product link invitation to be created.",
      "$ref": "#/$defs/GoogleAdsGoogleadsV25Resources__ProductLinkInvitation"
    }
  },
  "$defs": {
    "GoogleAdsGoogleadsV25Resources__AdvertisingPartnerLinkInvitationIdentifier": {
      "description": "The identifier for the Advertising Partner Google Ads account.",
      "type": "object",
      "properties": {
        "customer": {
          "description": "Immutable. The resource name of the advertising partner Google Ads account. This field is read only.",
          "type": "string"
        }
      }
    },
    "GoogleAdsGoogleadsV25Resources__AdvertisingPartnerLinkInvitationProperties": {
      "type": "object",
      "properties": {
        "allowedDomain": {
          "description": "Immutable. The allowed domain for the Advertising Partner link invitation. The advertising partner will only be able to advertise on this domain. The field is immutable after the creation of the link invitation.",
          "type": "string"
        }
      },
      "description": "Properties specific to an Advertising Partner link invitation."
    },
    "GoogleAdsGoogleadsV25Resources__HotelCenterLinkInvitationIdentifier": {
      "description": "The identifier for Hotel account.",
      "type": "object",
      "properties": {
        "hotelCenterId": {
          "format": "int64",
          "description": "Output only. The hotel center id of the hotel account. This field is read only",
          "type": "string"
        }
      }
    },
    "GoogleAdsGoogleadsV25Resources__MerchantCenterLinkInvitationIdentifier": {
      "type": "object",
      "properties": {
        "merchantCenterId": {
          "type": "string",
          "description": "Output only. The Merchant Center id of the Merchant account. This field is read only",
          "format": "int64"
        }
      },
      "description": "The identifier for Merchant Center Account."
    },
    "GoogleAdsGoogleadsV25Resources__ProductLinkInvitation": {
      "description": "Represents an invitation for data sharing connection between a Google Ads account and another account.",
      "type": "object",
      "properties": {
        "advertisingPartnerProperties": {
          "$ref": "#/$defs/GoogleAdsGoogleadsV25Resources__AdvertisingPartnerLinkInvitationProperties",
          "description": "Output only. Advertising Partner link invitation properties. These properties are only applicable when the link is for an Advertising Partner."
        },
        "resourceName": {
          "description": "Immutable. The resource name of a product link invitation. Product link invitation resource names have the form: `customers/{customer_id}/productLinkInvitations/{product_link_invitation_id}`",
          "type": "string"
        },
        "merchantCenter": {
          "$ref": "#/$defs/GoogleAdsGoogleadsV25Resources__MerchantCenterLinkInvitationIdentifier",
          "description": "Output only. Merchant Center link invitation."
        },
        "productLinkInvitationId": {
          "format": "int64",
          "type": "string",
          "description": "Output only. The ID of the product link invitation. This field is read only."
        },
        "hotelCenter": {
          "$ref": "#/$defs/GoogleAdsGoogleadsV25Resources__HotelCenterLinkInvitationIdentifier",
          "description": "Output only. Hotel link invitation."
        },
        "advertisingPartner": {
          "description": "Output only. Advertising Partner link invitation.",
          "$ref": "#/$defs/GoogleAdsGoogleadsV25Resources__AdvertisingPartnerLinkInvitationIdentifier"
        },
        "status": {
          "x-enumDescriptions": [
            "Not specified.",
            "Used for return value only. Represents value unknown in this version.",
            "The invitation is accepted.",
            "An invitation has been sent to the other account. A user on the other account may now accept the invitation by setting the status to ACCEPTED.",
            "This invitation has been sent by a user on the other account. It may be accepted by a user on this account by setting the status to ACCEPTED.",
            "The invitation is revoked by the user who sent the invitation.",
            "The invitation has been rejected by the invitee.",
            "The invitation has timed out before being accepted by the invitee."
          ],
          "type": "string",
          "description": "Output only. The status of the product link invitation. This field is read only.",
          "enum": [
            "UNSPECIFIED",
            "UNKNOWN",
            "ACCEPTED",
            "REQUESTED",
            "PENDING_APPROVAL",
            "REVOKED",
            "REJECTED",
            "EXPIRED"
          ]
        },
        "type": {
          "x-enumDescriptions": [
            "Not specified.",
            "Used for return value only. Represents value unknown in this version.",
            "A link to Data partner.",
            "A link to Google Ads.",
            "A link to Hotel Center.",
            "A link to Google Merchant Center.",
            "A link to the Google Ads account of the advertising partner."
          ],
          "enum": [
            "UNSPECIFIED",
            "UNKNOWN",
            "DATA_PARTNER",
            "GOOGLE_ADS",
            "HOTEL_CENTER",
            "MERCHANT_CENTER",
            "ADVERTISING_PARTNER"
          ],
          "description": "Output only. The type of the invited account. This field is read only and can be used for filtering invitations with {@code GoogleAdsService.SearchGoogleAdsRequest}.",
          "type": "string"
        }
      }
    }
  }
}