# REST API: tagságok útvonal

> Tagságok lekérése, létrehozása, módosítása, megújítása, lemondása és törlése a REST API-n át.

A `memberships` útvonallal a tagságok adatbázisát éred el: lekérdezheted, létrehozhatod, módosíthatod, megújíthatod, lemondhatod és törölheted a tagságokat. Az útvonal csak akkor érhető el, ha a Restrict Content Pro 3.0 vagy újabb van telepítve.

## Tagságok lekérése

`GET /wp-json/rcp/{verzió}/memberships/`

Kötelező paraméter nincs. Választható paraméterek:

| Paraméter | Jelentés |
|---|---|
| `id__in`, `id__not_in` | Tagsági azonosítók tömbje, amelyeket felvesz, illetve kizár. |
| `customer_id` | Csak ennek az ügyfélnek a tagságai. |
| `customer_id__in`, `customer_id__not_in` | Ügyfélazonosítók tömbje, amelyek tagságait felveszi, illetve kizárja. |
| `object_id` | Csak ennek a tagsági szintnek a tagságai. |
| `object_id__in`, `object_id__not_in` | Szintazonosítók tömbje, amelyek tagságait felveszi, illetve kizárja. |
| `object_type` | Csak ilyen típusú objektumhoz tartozó tagságok. |
| `object_type__in`, `object_type__not_in` | Objektumtípusok tömbje, amelyeket felvesz, illetve kizár. |
| `currency` | Csak az ebben a pénznemben (pénznemkód) kötött tagságok. |
| `created_date_query`, `trial_end_date_query`, `cancellation_date_date_query`, `expiration_date_query` | Dátumszűrő feltételek a létrehozás, a próbaidőszak vége, a lemondás és a lejárat dátumára, a WordPress `WP_Date_Query` formátumában. |
| `auto_renew` | `1`: csak az ismétlődő, `0`: csak a nem ismétlődő tagságok. |
| `status` | Egy állapot: `pending`, `active`, `canceled`, `expired`. |
| `status__in`, `status__not_in` | Állapotok tömbje, amelyeket felvesz, illetve kizár. |
| `gateway_customer_id` | A fizetési átjáró ügyfél-azonosítója. |
| `gateway_subscription_id` | A fizetési átjáró előfizetés-azonosítója. |
| `gateway` | A fizetési átjáró azonosítója (slug). |
| `subscription_key` | Előfizetési kulcs. |
| `upgraded_from` | Csak az ebből a tagságból frissített tagságok (a tagság azonosítója). |
| `disabled` | Üres (null): minden tagság, `0`: csak az engedélyezettek, `1`: csak a letiltottak. Alapérték: `0`. |
| `count` | Igaz esetén a tagságok számát adja vissza, hamis esetén a tagságobjektumok tömbjét. Alapérték: hamis. |
| `fields` | A visszaadott mezők: bármelyik ismert oszlopnév, üresen a teljes objektum. |
| `number` | A találatok legnagyobb száma. Alapérték: 20. |
| `offset` | Kihagyott tagságok száma. |
| `no_found_rows` | Kikapcsolja az `SQL_CALC_FOUND_ROWS` lekérdezést. Alapérték: igaz. |
| `orderby` | Rendezés: `id`, `object_id`, `object_type`, `currency`, `initial_amount`, `recurring_amount`, `created_date`, `trial_end_date`, `cancellation_date`, `expiration_date`, `times_billed`, `maximum_renewals`, `status`, `gateway_customer_id`, `gateway_subscription_id`, `subscription_key`. A `false`, az üres tömb vagy a `none` kikapcsolja a rendezést. Alapérték: `id`. |
| `order` | Rendezési irány: `ASC`, `DESC`. Alapérték: `DESC`. |
| `search` | Keresőkifejezés; a fenti oszlopok többségében keres. |
| `update_cache` | Előtölti a talált tagságok gyorsítótárát. Alapérték: hamis. |

## Egy tagság lekérése

`GET /wp-json/rcp/{verzió}/memberships/{tagság_id}`

Kötelező: `id`, a tagság azonosítója (az URL-ben vagy a törzsben).

## Új tagság

`POST /wp-json/rcp/{verzió}/memberships/new`

Kötelező paraméterek:

- `customer_id` (egész): az ügyfél azonosítója.
- `object_id` (egész): a tagsági szint azonosítója.

Választható paraméterek:

| Paraméter | Jelentés |
|---|---|
| `object_type` | Az objektum típusa. Alapérték: `membership`. |
| `currency` | A tagság pénzneme. Alapérték: a **Restrict → Settings → Payments** oldalon megadott pénznem. |
| `initial_amount` | A regisztrációkor fizetett összeg. Alapérték: `0.00`. |
| `recurring_amount` | A megújításkor fizetett összeg. Alapérték: `0.00`. |
| `created_date` | A létrehozás ideje MySQL-formátumban. Alapérték: a jelenlegi idő. |
| `trial_end_date` | A beépített próbaidőszak vége. Ha kihagyod, a rendszer az ügyfél próbaidőszak-jogosultságából és a szint beépített próbaidejéből számolja. |
| `expiration_date` | A lejárat vagy megújítás ideje MySQL-formátumban. `none`: a tagság sosem jár le. Ha kihagyod, a szint alapján számolódik. |
| `auto_renew` | Igaz, ha az automatikus megújítás be van kapcsolva. Alapérték: hamis. |
| `times_billed` | Hányszor számláztak már. Alapérték: 0. |
| `status` | `pending`, `active`, `canceled`, `expired`. Alapérték: `pending`. |
| `gateway_customer_id` | Az átjáró ügyfél-azonosítója. |
| `gateway_subscription_id` | Az átjáró előfizetés-azonosítója. |
| `gateway` | Az átjáró azonosítója (slug). |
| `signup_method` | A regisztráció módja: `live`, `manual`, `imported`. Alapérték: `live`. |
| `subscription_key` | Egyedi előfizetési kulcs. |
| `notes` | A tagság megjegyzései. Kézzel itt megadni nem ajánlott. |
| `upgraded_from` | Annak a tagságnak az azonosítója, amelyből ez frissítéssel jött létre. |
| `disabled` | `1`: letiltott, `0`: engedélyezett tagság. Alapérték: 0. |

## Tagság módosítása

`POST /wp-json/rcp/{verzió}/memberships/update/{tagság_id}`

Kötelező: `id` (egész), a módosítandó tagság azonosítója (az URL-ben vagy a törzsben). Választható paraméterek: ugyanazok, mint az új tagságnál (`customer_id`, `object_id`, `object_type`, `currency`, `initial_amount`, `recurring_amount`, `created_date`, `trial_end_date`, `expiration_date`, `auto_renew`, `times_billed`, `status`, `gateway_customer_id`, `gateway_subscription_id`, `gateway`, `signup_method`, `subscription_key`, `notes`, `upgraded_from`, `disabled`).

## Tagság megújítása

`POST /wp-json/rcp/{verzió}/memberships/{tagság_id}/renew`

Az API 1.2 vagy újabb verziója kell hozzá. A tagságot még egy számlázási időszakra meghosszabbítja.

Kötelező: `id` (egész), a megújítandó tagság azonosítója. Választható:

| Paraméter | Jelentés |
|---|---|
| `recurring` | Ismétlődő-e a tagság. Alapértéke a jelenlegi állapot. |
| `status` | Az új állapot. Alapérték: `active`. |
| `expiration` | Az új lejárati dátum. Alapesetben a szint számlázási ciklusából számolódik. |

## Tagság lemondása

`POST /wp-json/rcp/{verzió}/memberships/{tagság_id}/cancel`

Az API 1.2 vagy újabb verziója kell hozzá. A tagság állapotát „canceled” értékre állítja, és ha szükséges, a fizetési átjáróban az ismétlődő előfizetést is lemondja.

Kötelező: `id` (egész), a lemondandó tagság azonosítója (az URL-ben vagy a törzsben).

## Tagság törlése

`DELETE /wp-json/rcp/{verzió}/memberships/delete`

Kötelező: `id` (egész), a törlendő tagság azonosítója. Választható paraméter nincs.
