Pobieranie i aktualizowanie subskrypcji

Po pobraniu subskrypcji możesz użyć informacji z odpowiedzi, aby zmienić jej stan lub ją zaktualizować. Ta strona zawiera informacje o tym, jak pobrać i zaktualizować subskrypcję.

Pobieranie subskrypcji

Aby pobrać subskrypcję, która została zamówiona lub przeniesiona, użyj tego żądania HTTP GET:

GET https://reseller.googleapis.com/apps/reseller/v1/customers/CUSTOMER_ID/subscriptions/SUBSCRIPTION_ID

Zastąp te elementy:

  • CUSTOMER_ID: podstawowa nazwa domeny klienta lub jego unikalny identyfikator.
  • SUBSCRIPTION_ID: identyfikator subskrypcji, który jest unikalny dla każdego klienta. Tę wartość możesz pobrać za pomocą metody Retrieve all reseller subscriptions.

Ta operacja nie ma parametrów w treści żądania.

Pomyślna odpowiedź zwraca kod stanu HTTP 200 i ustawienia subskrypcji. W poniższym przykładzie odpowiedzi właściwość isInTrial ma wartość false, ale nie ma właściwości trialEndTime, co oznacza, że ten klient nigdy nie korzystał z 30-dniowego bezpłatnego okresu próbnego w ramach tego abonamentu.

{
  "kind": "reseller#subscription",
  "customerId": "C0123456",
  "subscriptionId": "123",
  "skuId": "1010020028",
  "billingMethod": "ONLINE",
  "creationTime": "1331647980142",
  "plan": {
    "planName": "ANNUAL",
    "isCommitmentPlan": true,
    "commitmentInterval": {
      "startTime": "1331647980142",
      "endTime": "1363183980142"
    }
  },
  "seats": {
    "kind": "subscriptions#seats",
    "numberOfSeats": 10,
    "licensedNumberOfSeats": 10
  },
  "trialSettings": {
    "isInTrial": false
  },
  "renewalSettings": {
    "kind": "subscriptions#renewalSettings",
    "renewalType": "RENEW_CURRENT_USERS_MONTHLY_PAY"
  },
  "purchaseOrderId": "example.com_annual_1",
  "status": "ACTIVE",
  "resourceUiUrl": "URL to customer's Subscriptions page in the Admin console",
  "skuName": "Google Workspace Business Standard"
}

Pobieranie wszystkich subskrypcji klienta

Aby pobrać wszystkie subskrypcje określonego klienta sprzedawcy, które zostały zamówione lub przeniesione, użyj tego żądania HTTP GET i dołącz token autoryzacji:

GET https://reseller.googleapis.com/apps/reseller/v1/subscriptions?customerId=CUSTOMER_ID&pageToken=START_DATE&maxResults=MAX_NUMBER

Zastąp te elementy:

  • CUSTOMER_ID: podstawowa nazwa domeny klienta lub jego unikalny identyfikator.
  • START_DATE: data rozpoczęcia w formacie YYYY-MM-DD.
  • MAX_NUMBER: maksymalna liczba wyników zwracanych na stronie odpowiedzi.

Ta operacja nie ma parametrów w treści żądania.

Pomyślna odpowiedź zwraca kod stanu HTTP 200 oraz listę subskrypcji i ustawień klienta. Lista subskrypcji może zawierać produkty, którymi nie można zarządzać w tej wersji interfejsu Reseller API.

Jeśli nie zarządzasz klientem, zwracany jest błąd 403 Forbidden.

Pobieranie wszystkich subskrypcji klienta, które można przenieść

Aby pobrać wszystkie subskrypcje klienta, które można przenieść do zarządzania przez sprzedawcę, użyj tego żądania HTTP GET i dołącz token autoryzacji. Wymagany jest parametr customerId, który jest unikalnym identyfikatorem klienta zwracanym podczas pobierania konta klienta odsprzedanego. customerAuthToken to token przeniesienia udostępniony przez klienta, który jest powiązany z Twoim identyfikatorem sprzedawcy. Po wygenerowaniu token jest ważny przez 30 dni. Więcej informacji o tym, jak klienci generują token, znajdziesz w artykule Przenoszenie konta Google Workspace do sprzedawcy.

GET https://reseller.googleapis.com/apps/reseller/v1/subscriptions?customerId=CUSTOMER_ID&customerAuthToken=AUTH_TOKEN&pageToken=START_DATE&maxResults=MAX_NUMBER

Zastąp te elementy:

  • CUSTOMER_ID: podstawowa nazwa domeny klienta lub jego unikalny identyfikator.
  • AUTH_TOKEN: token przeniesienia udostępniony przez klienta, który jest powiązany z Twoim identyfikatorem sprzedawcy. Po wygenerowaniu token jest ważny przez 30 dni. Więcej informacji o tym, jak klienci generują token, znajdziesz w artykule Przenoszenie konta Google Workspace do sprzedawcy. Jeśli ta wartość jest nieprawidłowa lub wygasła, odpowiedź interfejsu API zwraca błąd 403 Forbidden.
  • START_DATE: data rozpoczęcia w formacie YYYY-MM-DD.
  • MAX_NUMBER: maksymalna liczba wyników zwracanych na stronie odpowiedzi.

Ta operacja nie ma parametrów w treści żądania.

Pomyślna odpowiedź zwraca kod stanu HTTP 200 oraz listę subskrypcji klienta, które można przenieść, z datą ważności tokena przeniesienia i minimalną liczbą stanowisk potrzebnych w zamówieniu przeniesienia. Klient może mieć dodatkowe subskrypcje, których nie można przenieść.

{
  "kind": "reseller#subscriptions",
  "subscriptions": [
    {
      "kind": "subscriptions#subscription",
      "customerId": "custId-6543",
      "subscriptionId": "432",
      "skuId": "1010020028",
      "billingMethod": "ONLINE",
      "creationTime": "1331647980142",
      "plan": {
        "planName": "ANNUAL",
        "isCommitmentPlan": true,
        "commitmentInterval": {
          "startTime": "1331647980142",
          "endTime": "1363183980142"
        }
      },
      "seats": {
        "kind": "subscriptions#seats",
        "numberOfSeats": 10,
        "maximumNumberOfSeats": 500,
        "licensedNumberOfSeats": 10
      },
      "trialSettings": {
        "isInTrial": false
      },
      "renewalSettings": {
        "kind": "subscriptions#renewalSettings",
        "renewalType": "SWITCH_TO_PAY_AS_YOU_GO"
      },
      "transferInfo": {
        "transferabilityExpirationTime": "1333183980142",
        "minimumTransferableSeats": "20"
      },
      "purchaseOrderId": "PO_890",
      "status": "ACTIVE",
      "resourceUiUrl": "URL to customer's Subscriptions page in the Admin console",
      "skuName": "Google Workspace Business Standard"
    },
    {
      "kind": "subscriptions#subscription",
      "customerId": "custId-6543",
      "subscriptionId": "140",
      "skuId": "1010020028",
      "creationTime": "1329389322728",
      "plan": {
        "planName": "FLEXIBLE",
        "isCommitmentPlan": false
      },
      "seats": {
        "kind": "subscriptions#seats",
        "maximumNumberOfSeats": 50,
        "licensedNumberOfSeats": 10
      },
      "trialSettings": {
        "isInTrial": false,
        "trialEndTime": "1331877480016"
      },
      "renewalSettings": {
        "kind": "subscriptions#renewalSettings",
        "renewalType": "SWITCH_TO_PAY_AS_YOU_GO"
      },
      "transferInfo": {
        "transferabilityExpirationTime": "1333183780159",
        "minimumTransferableSeats": "10"
      },
      "purchaseOrderId": "",
      "status": "ACTIVE",
      "resourceUiUrl": "URL to customer's Subscriptions page in the Admin console",
      "skuName": "Google Workspace Business Standard"
    },
  ],
  "nextPageToken": "token"
}

Jeśli planujesz przenieść te subskrypcje za pomocą operacji zbiorczej,przenieś wszystkie subskrypcje. Przenoszenie subskrypcji pojedynczo powoduje błąd. Ponadto operacja zbiorcza przenosi tylko subskrypcje ze stanem ACTIVE. Więcej informacji znajdziesz w artykule Przenoszenie subskrypcji.

Pobieranie wszystkich subskrypcji sprzedawcy

Aby pobrać wszystkie subskrypcje sprzedawcy, które zostały zamówione lub przeniesione, użyj tego żądania HTTP GET i dołącz token autoryzacji:

GET https://reseller.googleapis.com/apps/reseller/v1/subscriptions?customerNamePrefix=PREFIX&pageToken=TOKEN&maxResults=MAX_NUMBER

Zastąp te elementy:

  • PREFIX: początek nazwy klienta, którego subskrypcje chcesz znaleźć.
  • TOKEN: token identyfikujący konkretną stronę wyników, którą ma zwrócić serwer.
  • MAX_NUMBER: maksymalna liczba wyników zwracanych na stronie odpowiedzi.

Ta operacja może korzystać z zakresu dostępu tylko do odczytu OAuth. customerNamePrefix, pageToken i maxResults to opcjonalne ciągi zapytania.

Ten przykład pobiera wszystkie subskrypcje sprzedawcy należące do klientów, których nazwy zaczynają się od „exam”:

GET https://reseller.googleapis.com/apps/reseller/v1/subscriptions?customerNamePrefix=exam
{
  "kind": "reseller#subscriptions",
  "subscriptions": [
    {
      "kind": "subscriptions#subscription",
      "customerId": "C0123456",
      "subscriptionId": "123",
      "skuId": "1010020028",
      "creationTime": "1331647980142",
      "billingMethod": "ONLINE",
      "plan": {
        "planName": "ANNUAL",
        "isCommitmentPlan": true,
        "commitmentInterval": {
          "startTime": "1331647980142",
          "endTime": "1363183980142"
        }
      },
      "seats": {
        "kind": "subscriptions#seats",
        "numberOfSeats": 10,
        "licensedNumberOfSeats": 10
      },
      "trialSettings": {
        "isInTrial": false
      },
      "renewalSettings": {
        "kind": "subscriptions#renewalSettings",
        "renewalType": "SWITCH_TO_PAY_AS_YOU_GO"
      },
      "purchaseOrderId": "PO_135",
      "status": "ACTIVE",
      "resourceUiUrl": "URL to customer's Subscriptions page in the Admin console",
      "skuName": "Google Workspace Business Standard"
    },
    {
      "kind": "subscriptions#subscription",
      "customerId": "custId-5678",
      "subscriptionId": "1404686",
      "skuId": "1010020028",
      "billingMethod": "ONLINE",
      "creationTime": "1329389322728",
      "plan": {
        "planName": "FLEXIBLE",
        "isCommitmentPlan": false
      },
      "seats": {
        "kind": "subscriptions#seats",
        "maximumNumberOfSeats": 50,
        "licensedNumberOfSeats": 10
      },
      "trialSettings": {
        "isInTrial": false,
        "trialEndTime": "1331877480016"
      },
      "renewalSettings": {
        "kind": "subscriptions#renewalSettings",
        "renewalType": "AUTO_RENEW"
      },
      "purchaseOrderId": "",
      "status": "ACTIVE",
      "resourceUiUrl": "URL to customer's Subscriptions page in the Admin console",
      "skuName": "Google Workspace Business Standard"
    },
  ],
  "nextPageToken": "token"
}

Aktualizowanie abonamentu

Aktualizowanie abonamentów Google Workspace różni się w zależności od abonamentu. Zanim zaktualizujesz abonament, weź pod uwagę te kwestie:

  • Gdy tworzysz subskrypcję, a klient spełnia warunki, abonament może być 30-dniowym okresem próbnym. Zarówno abonament elastyczny, jak i abonament roczny mogą być 30-dniowymi bezpłatnymi okresami próbnymi. W okresie próbnym możesz w razie potrzeby zmieniać abonament na elastyczny lub roczny. Po zakończeniu okresu próbnego i aktywowaniu abonamentu jego aktualizacja podlega tym samym regułom co w przypadku aktywnych abonamentów innych subskrypcji. Aby natychmiast przejść z subskrypcji próbnej na aktywny abonament, rozpocznij płatną usługę w ramach 30-dniowego bezpłatnego okresu próbnego. Więcej informacji o 30-dniowym okresie próbnym i zasadach kwalifikacji klientów znajdziesz w centrum pomocy administratora.

  • Możesz zaktualizować abonament elastyczny do abonamentu rocznego.

  • Nie możesz zaktualizować abonamentu rocznego.

  • Nie wszystkie abonamenty działają ze wszystkimi produktami. Więcej informacji o tym, które produkty są używane w tych abonamentach, znajdziesz w artykule Produkty i SKU.

Aby zaktualizować abonament w ramach 30-dniowego okresu próbnego lub abonament elastyczny do abonamentu rocznego, użyj tego żądania HTTP POST:

POST https://reseller.googleapis.com/apps/reseller/v1/customers/CUSTOMER_ID/subscriptions/SUBSCRIPTION_ID/changePlan

Zastąp te elementy:

  • CUSTOMER_ID: podstawowa nazwa domeny klienta lub jego unikalny identyfikator.
  • SUBSCRIPTION_ID: identyfikator subskrypcji, który jest unikalny dla każdego klienta. Tę wartość możesz pobrać za pomocą metody Retrieve all reseller subscriptions.

Ten przykład aktualizuje subskrypcję o wartości subscriptionId równej 123. customerId to C0123456.

POST https://reseller.googleapis.com/apps/reseller/v1/customers/C0123456/subscriptions/123/changePlan

Treść żądania zawiera te elementy:

{
  "kind": "reseller#changePlanRequest",
  "planName": "ANNUAL_MONTHLY_PAY",
  "seats": {
    "kind": "subscriptions#seats",
    "numberOfSeats": 10
  },
  "purchaseOrderId": "123_March2012"
}

Pomyślna odpowiedź zwraca kod stanu HTTP 201 oraz zaktualizowane ustawienia abonamentu:

{
  "kind": "reseller#subscription",
  "customerId": "C0123456",
  "subscriptionId": "123",
  "skuId": "1010020028",
  "creationTime": "1331647980142",
  "plan": {
    "planName": "ANNUAL",
    "isCommitmentPlan": true,
    "commitmentInterval": {
      "startTime": "1331647980142",
      "endTime": "1363183980142"
    }
  },
  "seats": {
    "kind": "subscriptions#seats",
    "numberOfSeats": 10,
    "licensedNumberOfSeats": 10
  },
  "trialSettings": {
    "isInTrial": false
  },
  "renewalSettings": {
    "kind": "subscriptions#renewalSettings",
    "renewalType": "SWITCH_TO_PAY_AS_YOU_GO"
  },
  "purchaseOrderId": "123_March2012",
  "status": "ACTIVE",
  "skuName": "Google Workspace Business Standard"
}

Aktualizowanie stanowisk w subskrypcji

Aktualizowanie subskrypcji w abonamencie rocznym wymaga użycia innych właściwości subskrypcji niż w przypadku aktualizowania subskrypcji w abonamencie elastycznym Google Workspace.

Aktualizowanie stanowisk w subskrypcji w abonamencie rocznym

Aby zaktualizować ustawienia licencji użytkownika w subskrypcji w abonamencie rocznym, użyj tego żądania HTTP POST:

POST https://reseller.googleapis.com/apps/reseller/v1/customers/CUSTOMER_ID/subscriptions/SUBSCRIPTION_ID/changeSeats

Zastąp te elementy:

  • CUSTOMER_ID: podstawowa nazwa domeny klienta lub jego unikalny identyfikator.
  • SUBSCRIPTION_ID: identyfikator subskrypcji, który jest unikalny dla każdego klienta. Tę wartość możesz pobrać za pomocą metody Retrieve all reseller subscriptions.

Ten przykład aktualizuje subskrypcję o wartości subscriptionId równej 123. customerId to C0123456. Treść żądania różni się w zależności od typu abonamentu:

POST https://reseller.googleapis.com/apps/reseller/v1/customers/C0123456/subscriptions/123/changeSeats

Subskrypcja w abonamencie rocznym Google Workspace używa tej treści żądania do aktualizowania liczby licencji użytkownika. Wartość numberOfSeats to suma. Jeśli na przykład masz 10 licencji użytkownika, a klient zamówi 5 nowych licencji, łączna liczba w treści żądania dla numberOfSeats wyniesie 15, jak pokazano w tym przykładzie:

{
    "kind": "subscriptions#seats",
    "numberOfSeats": 15
}

Aktualizowanie stanowisk w subskrypcji w abonamencie elastycznym

Subskrypcja w abonamencie elastycznym Google Workspace używa treści żądania do aktualizowania licencji użytkownika. Wartość maximumNumberOfSeats to łączna liczba dotychczasowych i nowych licencji. Jest to maksymalna liczba licencji użytkownika, które można udostępnić na koncie.

{
  "kind": "subscriptions#seats",
  "maximumNumberOfSeats": 15
}

Pomyślna odpowiedź zwraca kod stanu HTTP 201 oraz zaktualizowane ustawienia licencji subskrypcji:

{
  "kind": "reseller#subscription",
  "customerId": "C0123456",
  "subscriptionId": "123",
  "skuId": "1010020028",
  "creationTime": "1331647980142",
  "plan": {
    "planName": "FLEXIBLE",
    "isCommitmentPlan": false
  },
  "seats": {
    "kind": "subscriptions#seats",
    "maximumNumberOfSeats": 15,
    "licensedNumberOfSeats": 10
  },
  "trialSettings": {
    "isInTrial": false
  },
  "skuName": "Google Workspace Business Standard"
}

Aktualizowanie ustawień odnowienia subskrypcji

Aby zaktualizować ustawienia odnowienia subskrypcji w abonamencie rocznym, użyj tego żądania HTTP POST:

POST https://reseller.googleapis.com/apps/reseller/v1/customers/CUSTOMER_ID/subscriptions/SUBSCRIPTION_ID/changeRenewalSettings

Zastąp te elementy:

  • CUSTOMER_ID: podstawowa nazwa domeny klienta lub jego unikalny identyfikator.
  • SUBSCRIPTION_ID: identyfikator subskrypcji, który jest unikalny dla każdego klienta. Tę wartość możesz pobrać za pomocą metody Retrieve all reseller subscriptions.

Oto przykładowa treść żądania:

{
  "kind": "subscriptions#renewalSettings",
  "renewalType": "SWITCH_TO_PAY_AS_YOU_GO"
}

Wartość właściwości renewalType może być jedną z tych opcji:

  • AUTO_RENEW_YEARLY_PAY: po zakończeniu okresu abonamentu rocznego automatycznie odnów abonament jako ANNUAL_YEARLY_PAY z tą samą wartością numberOfSeats.
  • AUTO_RENEW_MONTHLY_PAY: po zakończeniu okresu abonamentu rocznego automatycznie odnów abonament jako ANNUAL_MONTHLY_PAY z tą samą wartością numberOfSeats.
  • RENEW_CURRENT_USERS_YEARLY_PAY: po zakończeniu okresu abonamentu rocznego odnów abonament jako ANNUAL_YEARLY_PAY, ale użyj łącznej liczby aktywnych licencji użytkownika. Jest to ustawienie domyślne dla aktywnych abonamentów rocznych (płatnych co roku).
  • RENEW_CURRENT_USERS_MONTHLY_PAY: po zakończeniu okresu abonamentu rocznego odnów abonament jako ANNUAL_MONTHLY_PAY, ale użyj łącznej liczby aktywnych licencji użytkownika. Jest to ustawienie domyślne dla aktywnych abonamentów rocznych (płatnych co miesiąc).
  • RENEW_ON_PROPOSED_OFFER: po zakończeniu okresu bieżącego abonamentu odnów go zgodnie z najnowszą propozycją odnowienia, w której liczba stanowisk jest równa liczbie aktywnych licencji użytkownika lub liczbie stanowisk w proponowanej ofercie, w zależności od tego, która z tych wartości jest większa.
  • SWITCH_TO_PAY_AS_YOU_GO: po zakończeniu okresu abonamentu rocznego zmień go na abonament elastyczny.
  • CANCEL: po zakończeniu okresu abonamentu rocznego subskrypcja zostanie zawieszona. Aby dowiedzieć się, jak cofnąć zawieszenie, odwiedź Centrum pomocy administratora.

Pomyślna odpowiedź zwraca kod stanu HTTP 201 oraz zaktualizowane ustawienia odnowienia subskrypcji:

{
  "kind": "reseller#subscription",
  "customerId": "C0123456",
  "subscriptionId": "123",
  "skuId": "1010020028",
  "creationTime": "1331647980142",
  "plan": {
    "planName": "ANNUAL",
    "isCommitmentPlan": true,
    "commitmentInterval": {
      "startTime": "1331647980142",
      "endTime": "1363183980142"
    }
  },
  "seats": {
    "kind": "subscriptions#seats",
    "numberOfSeats": 15,
    "licensedNumberOfSeats": 15
  },
  "trialSettings": {
    "isInTrial": false
  },
  "renewalSettings": {
    "kind": "subscriptions#renewalSettings",
    "renewalType": "SWITCH_TO_PAY_AS_YOU_GO"
  },
  "skuName": "Google Workspace Business Standard"
}

Rozpoczynanie płatnej usługi w ramach bezpłatnego okresu próbnego

Aby natychmiast przejść z 30-dniowego bezpłatnego okresu próbnego na płatną subskrypcję, jeśli dla subskrypcji próbnej skonfigurowano już abonament, użyj tego żądania HTTP POST:

POST https://reseller.googleapis.com/apps/reseller/v1/customers/CUSTOMER_ID/subscriptions/SUBSCRIPTION_ID/startPaidService

Zastąp te elementy:

  • CUSTOMER_ID: podstawowa nazwa domeny klienta lub jego unikalny identyfikator.
  • SUBSCRIPTION_ID: identyfikator subskrypcji, który jest unikalny dla każdego klienta. Tę wartość możesz pobrać za pomocą metody Retrieve all reseller subscriptions.

W tym przykładzie customerId ma wartość C0123456, a subscriptionId ma wartość 123:

POST https://reseller.googleapis.com/apps/reseller/v1/customers/C0123456/subscriptions/123/startPaidService

Ta operacja nie ma parametrów w treści żądania.

Pomyślna odpowiedź zwraca kod stanu HTTP 201 oraz zaktualizowane ustawienia subskrypcji:

{
  "kind": "reseller#subscription",
  "customerId": "C0123456",
  "subscriptionId": "123",
  "skuId": "1010020028",
  "creationTime": "1331647980142",
  "plan": {
    "planName": "ANNUAL",
    "isCommitmentPlan": true,
    "commitmentInterval": {
      "startTime": "1331647980142",
      "endTime": "1363183980142"
    }
  },
  "seats": {
    "kind": "subscriptions#seats",
    "numberOfSeats": 15,
    "licensedNumberOfSeats": 15
  },
  "trialSettings": {
    "isInTrial": false
  },
  "renewalSettings": {
    "kind": "subscriptions#renewalSettings",
    "renewalType": "SWITCH_TO_PAY_AS_YOU_GO"
  },
  "skuName": "Google Workspace Business Standard"
}

Przechodzenie na wyższą lub niższą wersję subskrypcji

Nie możesz przejść na niższą wersję abonamentu rocznego w trakcie jego trwania ani zaplanować przejścia na niższą wersję za pomocą ustawień odnowienia. Zalecamy ustawienie odnowienia na przejście na abonament FLEXIBLE, a następnie przejście na niższą wersję po odnowieniu.

Aby przejść na wyższą lub niższą wersję subskrypcji, utwórz nową subskrypcję z identyfikatorem skuId, na który chcesz przejść.

POST https://reseller.googleapis.com/apps/reseller/v1/customers/CUSTOMER_ID/subscriptions

Zastąp te elementy:

  • CUSTOMER_ID: podstawowa nazwa domeny klienta lub jego unikalny identyfikator.

To wywołanie powoduje zakończenie poprzedniej subskrypcji i utworzenie nowej.

Więcej informacji o przechodzeniu na wyższą i niższą wersję znajdziesz na stronie Produkty i SKU.