> This page is for API Reference.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.navipartner.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.navipartner.com/_mcp/server.

# Get Ticket

GET https://api.npretail.app/{tenant}/{environment}/{company}/ticket/{ticketId}

Retrieves detailed information about a specific ticket using its unique `ticketId`. Admission content and descriptions are always included. Use `withAccessHistory` to include summarized access history and `withAccessHistoryDetails` to additionally include event-level access history. Use `withWallet` to include `inWallet` and `wallets`, the headers of the Attraction Wallets holding the ticket.

Reference: https://docs.navipartner.com/apis/api-reference/ticketing/service-ticket/get-ticket

## Authentication

- `x-np-api-key` header (required) — API Key authentication via header

## Request

### Path parameters

- `tenant` (string, required) — Your Entra Tenant ID. [More details.](/paths#1-tenant)
- `environment` (string, required) — Your Business Central Environment. [More details.](/paths#2-environment)
- `company` (string, required) — Your Business Central Company. [More details.](/paths#3-company)
- `ticketId` (UUID, required) — The unique identifier of a ticket

### Query parameters

- `storeCode` (string, optional) — A unique identifier for a store - a logical grouping defining a subset of ticket items. This is used to filter the list of ticket items returned by the API. When left empty, the API will use the default store code.
- `withAccessHistory` (boolean, optional)
- `withAccessHistoryDetails` (boolean, optional)
- `withWallet` (boolean, optional) — When `true`, the response includes `inWallet` and the `wallets` array. Defaults to `false`.

## Response

### 200

- `ticketId` (UUID, required) — The unique identifier of a ticket
- `ticketNumber` (string, required) — The unique identifier of a ticket
- `ticketKind` (enum, required) — The kind of ticket, either individual or group admission.
  - Allowed values: `individualAdmission`, `groupAdmission`
- `reservationToken` (string, required) — A unique token that identifies a ticket reservation
- `itemNumber` (string, required) — An item or product number defined in the ticketing system
- `validFrom` (datetime, required)
- `validUntil` (datetime, required)
- `issuedAt` (datetime, required) — The date and time when the ticket was issued
- `blocked` (boolean, required)
- `content` (list of TicketContent, required)
- `description` (Descriptions, required) — Descriptive information about a ticket item. The source of these fields are configurable.
- `pinCode` (string, optional) — A pin code for the ticket, used to authorize rescheduling or revoking a confirmed ticket. Returned only for confirmed reservations. The format is configured per tenant, so do not validate it against a fixed length or pattern.
- `unitPrice` (double, optional)
- `unitPriceInclVat` (double, optional)
- `currencyCode` (string, optional)
- `ticketHolder` (string, optional) — The name of the person holding the ticket(s)
- `ticketHolderLanguage` (string, optional) — The language code the ticket holder wants to receive notifications in.
- `notificationAddress` (string, optional) — The email address or mobile phone number to send tickets and notifications to
- `inWallet` (boolean, optional) — Only present when `withWallet=true`. `true` when the ticket is in a wallet.
- `wallets` (list of WalletHeader, optional) — Only present when `withWallet=true`. The wallets currently holding the ticket, each as `Get Wallet` returns it but without the assets. Empty when the ticket is in no wallet.
- `printCount` (integer, optional)
- `printedAt` (datetime, optional)
- `accessHistory` (list of TicketAccessHistory, optional)
- `admissionEntitlements` (list of AdmissionEntitlement, optional)

## Types

### TicketContent

Details of the ticket content

- `admissionDetails` (AdmissionDetails, required) — Details of the admission for a specific reservation
- `scheduleDetails` (ScheduleDetailsTicket, required) — Used for the ticket content

### Descriptions

Descriptive information about a ticket item. The source of these fields are configurable.

- `title` (string, optional)
- `subtitle` (string, optional)
- `name` (string, optional)
- `description` (string, optional)
- `fullDescription` (string, optional)

### WalletHeader

The wallet header - everything `Get Wallet` returns about a wallet except its assets. Also returned in `wallets` on `Get Ticket` and `Find Ticket` when `withWallet=true`.

- `walletId` (UUID, required) — A globally unique identifier for the wallet.
- `referenceNumber` (string, required) — The visual reference number associated with the wallet.
- `description` (string, required) — A human-readable description of the wallet.
- `expiryDatetime` (string, required) — The expiry datetime of the wallet in ISO 8601 format. Use an empty string if not applicable.
- `lastPrintedAt` (string, required) — The datetime when the wallet was last printed in ISO 8601 format. Use an empty string if not applicable.
- `printCount` (integer, required) — The number of times the wallet has been printed.
- `originatesFromItemNo` (string, optional) — The item number from which the wallet originates.
- `originatesFromDescription` (string, optional) — The item description from which the wallet originates.
- `externalReferenceNumber` (string, optional) — The first external reference on the wallet that is neither blocked nor expired. `null` when there is none.

### TicketAccessHistory

Details of the access history for a ticket The `events` list is only populated when `withAccessHistoryDetails` is set to true in the request.

- `admissionCode` (string, required) — A unique code that identifies a specific admission.
- `firstAdmissionAt` (datetime, optional)
- `confirmedGroupSize` (integer, optional) — The confirmed group size for a group ticket. This number can be less than or equal to the max group size.
- `maxGroupSize` (integer, optional) — The maximum group size for a group ticket. Calculated as ordered quantity multiplied by a factor defined per admission.
- `events` (list of TicketAccessEvent, optional)

### AdmissionEntitlement

Included for Group Tickets, the admission entitlement objects defines the number of admissions included for the group ticket.

- `code` (string, required) — A unique code that identifies a specific admission.
- `maxGroupSize` (integer, required) — The maximum group size for a group ticket. Calculated as ordered quantity multiplied by a factor defined per admission.

### AdmissionDetails

Details of the admission for a specific reservation

- `capacityControl` (enum, required) — Indicates the type of capacity control that applies. `none` means capacity is not tracked. `sales` means capacity is decremented by ticket sales. `admitted` means capacity is decremented by admitted entries. `full` means capacity tracks both admissions and departures.
  - Allowed values: `none`, `sales`, `admitted`, `full`
- `code` (string, required) — A unique code that identifies a specific admission.
- `default` (boolean, required) — Indicates if this admission is the default admission when there are multiple admission defined.
- `description` (Descriptions, required) — Descriptive information about a ticket item. The source of these fields are configurable.
- `included` (enum, required) — Indicates if the admission is mandatory or optional. `mandatory` implies that the admission can not be deselected. `optionalNotSelected` implies that you must opt-in to include the admission, while `optionalAndSelected` implies that the admission is optional and selected and you can opt-out. You opt-in or opt-out by including or excluding the admission in the reservation request.
  - Allowed values: `mandatory`, `optionalNotSelected`, `optionalAndSelected`
- `scheduleDetails` (ScheduleDetails, optional) — Details of the schedule for a specific reservation or ticket.

### ScheduleDetailsTicket

Used for the ticket content

- `code` (string, required)
- `duration` (integer, required)
- `endDate` (date, required)
- `endTime` (string, required)
- `externalNumber` (integer, required) — The ID of a specific time slot for a specific admission
- `startDate` (date, required)
- `startTime` (string, required)
- `type` (enum, required) — The types of events that can occur for a ticket.
  - Allowed values: `initialEntry`, `reservation`, `admitted`, `departed`, `consumed`, `canceledAdmission`, `payment`, `prePaid`, `postPaid`, `canceledReservation`, `requested`, `unknown`
- `arrivalFromTime` (string, optional) — The earliest time a customer can arrive for the time slot.
- `arrivalUntilTime` (string, optional) — The latest time a customer can arrive for the time slot.
- `description` (string, optional)

### TicketAccessEvent

Details of an access event for a ticket

- `event` (enum, required) — The types of events that can occur for a ticket.
  - Allowed values: `initialEntry`, `reservation`, `admitted`, `departed`, `consumed`, `canceledAdmission`, `payment`, `prePaid`, `postPaid`, `canceledReservation`, `requested`, `unknown`
- `eventAt` (datetime, required)

### ScheduleDetails

Details of the schedule for a specific reservation or ticket.

- `code` (string, required)
- `duration` (integer, required)
- `endDate` (date, required)
- `endTime` (string, required)
- `externalNumber` (integer, required) — The ID of a specific time slot for a specific admission
- `startDate` (date, required)
- `startTime` (string, required)
- `arrivalFromTime` (string, optional) — The earliest time a customer can arrive for the time slot.
- `arrivalUntilTime` (string, optional) — The latest time a customer can arrive for the time slot.
- `description` (string, optional)
- `type` (enum, optional) — The types of events that can occur for a ticket.
  - Allowed values: `initialEntry`, `reservation`, `admitted`, `departed`, `consumed`, `canceledAdmission`, `payment`, `prePaid`, `postPaid`, `canceledReservation`, `requested`, `unknown`

## Examples

### Get individual admission ticket

**Response**

```json
{
  "ticketId": "12345678-1234-1234-1234-123456789012",
  "ticketNumber": "TICKET123",
  "ticketKind": "individualAdmission",
  "reservationToken": "ABC123456DEF789GHI",
  "itemNumber": "31001",
  "validFrom": "2024-10-15T00:00:00Z",
  "validUntil": "2025-10-14T23:59:59Z",
  "issuedAt": "2024-10-15T12:13:00Z",
  "blocked": false,
  "content": [
    {
      "admissionDetails": {
        "capacityControl": "sales",
        "code": "CASTLE",
        "default": true,
        "description": {
          "title": "Castle Museum Entrance",
          "subtitle": "Adult Castle Ticket",
          "name": "Explore the Castle",
          "description": "<b>Access</b> to the castle exhibit",
          "fullDescription": "<p>Experience the grandeur of the castle's architecture and marvel at its intricate details.  Walk through beautifully decorated rooms and admire the stunning artwork and furniture on display.</p>"
        },
        "included": "mandatory"
      },
      "scheduleDetails": {
        "code": "MORNING",
        "duration": 10800,
        "endDate": "2024-10-15",
        "endTime": "12:00",
        "externalNumber": 452,
        "startDate": "2024-10-15",
        "startTime": "09:00",
        "type": "initialEntry",
        "arrivalFromTime": "08:30",
        "arrivalUntilTime": "10:00",
        "description": "Morning schedule"
      }
    }
  ],
  "description": {
    "title": "Castle Museum Entrance",
    "subtitle": "Adult Castle Ticket",
    "name": "Explore History",
    "description": "<b>Access</b> to all castle exhibits",
    "fullDescription": "<p>Step back in time and immerse yourself in the rich history of our castle museum.  Discover fascinating artifacts, explore grand halls, and learn about the lives of the people who once lived within these walls.</p> <p>Experience the grandeur of the castle's architecture and marvel at its intricate details.  Walk through beautifully decorated rooms and admire the stunning artwork and furniture on display.</p> <p>Join a guided tour to gain deeper insights into the castle's history and hear captivating stories  about its past. Learn about the battles fought, the royal inhabitants, and the secrets that lie hidden within these ancient walls.</p>"
  },
  "pinCode": "1234-5678",
  "unitPrice": 80,
  "unitPriceInclVat": 100,
  "currencyCode": "DKK",
  "ticketHolder": "John Doe",
  "ticketHolderLanguage": "ENU",
  "notificationAddress": "john@acme.com",
  "inWallet": true,
  "wallets": [
    {
      "walletId": "a2cbd5bc-5cf4-ef11-b3a1-a1084fe21c78",
      "referenceNumber": "141234529930210327",
      "description": "My wallet holds my tickets, coupons and vouchers for the event.",
      "expiryDatetime": "2026-12-31T23:59:59Z",
      "lastPrintedAt": "2026-12-31T23:59:59Z",
      "printCount": 1,
      "originatesFromItemNo": "70009",
      "originatesFromDescription": "Family Fun Pack",
      "externalReferenceNumber": "151234529930210327"
    }
  ],
  "printCount": 1,
  "printedAt": "2024-10-15T12:00:00Z",
  "accessHistory": [
    {
      "admissionCode": "CASTLE",
      "firstAdmissionAt": "2025-01-31T09:12:00Z",
      "events": [
        {
          "event": "admitted",
          "eventAt": "2025-01-31T09:12:00Z"
        },
        {
          "event": "departed",
          "eventAt": "2025-01-31T12:47:00Z"
        }
      ]
    }
  ]
}
```

**SDK Code**

```python Get individual admission ticket
import requests

url = "https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./ticket/12345678-1234-1234-1234-123456789012"

querystring = {"storeCode":"EN","withAccessHistory":"true","withAccessHistoryDetails":"true","withWallet":"true"}

headers = {"x-np-api-key": "<NaviPartner API Key>"}

response = requests.get(url, headers=headers, params=querystring)

print(response.json())
```

```javascript Get individual admission ticket
const url = 'https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./ticket/12345678-1234-1234-1234-123456789012?storeCode=EN&withAccessHistory=true&withAccessHistoryDetails=true&withWallet=true';
const options = {method: 'GET', headers: {'x-np-api-key': '<NaviPartner API Key>'}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go Get individual admission ticket
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./ticket/12345678-1234-1234-1234-123456789012?storeCode=EN&withAccessHistory=true&withAccessHistoryDetails=true&withWallet=true"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("x-np-api-key", "<NaviPartner API Key>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby Get individual admission ticket
require 'uri'
require 'net/http'

url = URI("https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./ticket/12345678-1234-1234-1234-123456789012?storeCode=EN&withAccessHistory=true&withAccessHistoryDetails=true&withWallet=true")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["x-np-api-key"] = '<NaviPartner API Key>'

response = http.request(request)
puts response.read_body
```

```java Get individual admission ticket
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./ticket/12345678-1234-1234-1234-123456789012?storeCode=EN&withAccessHistory=true&withAccessHistoryDetails=true&withWallet=true")
  .header("x-np-api-key", "<NaviPartner API Key>")
  .asString();
```

```php Get individual admission ticket
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./ticket/12345678-1234-1234-1234-123456789012?storeCode=EN&withAccessHistory=true&withAccessHistoryDetails=true&withWallet=true', [
  'headers' => [
    'x-np-api-key' => '<NaviPartner API Key>',
  ],
]);

echo $response->getBody();
```

```csharp Get individual admission ticket
using RestSharp;

var client = new RestClient("https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./ticket/12345678-1234-1234-1234-123456789012?storeCode=EN&withAccessHistory=true&withAccessHistoryDetails=true&withWallet=true");
var request = new RestRequest(Method.GET);
request.AddHeader("x-np-api-key", "<NaviPartner API Key>");
IRestResponse response = client.Execute(request);
```

```swift Get individual admission ticket
import Foundation

let headers = ["x-np-api-key": "<NaviPartner API Key>"]

let request = NSMutableURLRequest(url: NSURL(string: "https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./ticket/12345678-1234-1234-1234-123456789012?storeCode=EN&withAccessHistory=true&withAccessHistoryDetails=true&withWallet=true")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```

### Get group admission ticket

Example of retrieving a group ticket with admissionEntitlements.

**Response**

```json
{
  "ticketId": "12345678-1234-1234-1234-123456789012",
  "ticketNumber": "TICKET123",
  "ticketKind": "groupAdmission",
  "reservationToken": "ABC123456DEF789GHI",
  "itemNumber": "31001",
  "validFrom": "2024-10-15T00:00:00Z",
  "validUntil": "2025-10-14T23:59:59Z",
  "issuedAt": "2024-10-15T12:13:00Z",
  "blocked": false,
  "content": [
    {
      "admissionDetails": {
        "capacityControl": "sales",
        "code": "CASTLE",
        "default": true,
        "description": {
          "title": "Castle Museum Entrance",
          "subtitle": "Adult Castle Ticket",
          "name": "Explore the Castle",
          "description": "<b>Access</b> to the castle exhibit",
          "fullDescription": "<p>Experience the grandeur of the castle's architecture and marvel at its intricate details.  Walk through beautifully decorated rooms and admire the stunning artwork and furniture on display.</p>"
        },
        "included": "mandatory"
      },
      "scheduleDetails": {
        "code": "MORNING",
        "duration": 10800,
        "endDate": "2024-10-15",
        "endTime": "12:00",
        "externalNumber": 452,
        "startDate": "2024-10-15",
        "startTime": "09:00",
        "type": "initialEntry",
        "arrivalFromTime": "08:30",
        "arrivalUntilTime": "10:00",
        "description": "Morning schedule"
      }
    }
  ],
  "description": {
    "title": "Castle Museum Entrance",
    "subtitle": "Adult Castle Ticket",
    "name": "Explore History",
    "description": "<b>Access</b> to all castle exhibits",
    "fullDescription": "<p>Step back in time and immerse yourself in the rich history of our castle museum.  Discover fascinating artifacts, explore grand halls, and learn about the lives of the people who once lived within these walls.</p> <p>Experience the grandeur of the castle's architecture and marvel at its intricate details.  Walk through beautifully decorated rooms and admire the stunning artwork and furniture on display.</p> <p>Join a guided tour to gain deeper insights into the castle's history and hear captivating stories  about its past. Learn about the battles fought, the royal inhabitants, and the secrets that lie hidden within these ancient walls.</p>"
  },
  "pinCode": "1234-5678",
  "unitPrice": 80,
  "unitPriceInclVat": 100,
  "currencyCode": "DKK",
  "ticketHolder": "John Doe",
  "ticketHolderLanguage": "ENU",
  "notificationAddress": "john@acme.com",
  "printCount": 1,
  "printedAt": "2024-10-15T12:00:00Z",
  "admissionEntitlements": [
    {
      "code": "CASTLE",
      "maxGroupSize": 10
    }
  ]
}
```

**SDK Code**

```python Get group admission ticket
import requests

url = "https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./ticket/12345678-1234-1234-1234-123456789012"

querystring = {"storeCode":"EN","withAccessHistory":"false","withAccessHistoryDetails":"false","withWallet":"false"}

headers = {"x-np-api-key": "<NaviPartner API Key>"}

response = requests.get(url, headers=headers, params=querystring)

print(response.json())
```

```javascript Get group admission ticket
const url = 'https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./ticket/12345678-1234-1234-1234-123456789012?storeCode=EN&withAccessHistory=false&withAccessHistoryDetails=false&withWallet=false';
const options = {method: 'GET', headers: {'x-np-api-key': '<NaviPartner API Key>'}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go Get group admission ticket
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./ticket/12345678-1234-1234-1234-123456789012?storeCode=EN&withAccessHistory=false&withAccessHistoryDetails=false&withWallet=false"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("x-np-api-key", "<NaviPartner API Key>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby Get group admission ticket
require 'uri'
require 'net/http'

url = URI("https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./ticket/12345678-1234-1234-1234-123456789012?storeCode=EN&withAccessHistory=false&withAccessHistoryDetails=false&withWallet=false")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["x-np-api-key"] = '<NaviPartner API Key>'

response = http.request(request)
puts response.read_body
```

```java Get group admission ticket
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./ticket/12345678-1234-1234-1234-123456789012?storeCode=EN&withAccessHistory=false&withAccessHistoryDetails=false&withWallet=false")
  .header("x-np-api-key", "<NaviPartner API Key>")
  .asString();
```

```php Get group admission ticket
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./ticket/12345678-1234-1234-1234-123456789012?storeCode=EN&withAccessHistory=false&withAccessHistoryDetails=false&withWallet=false', [
  'headers' => [
    'x-np-api-key' => '<NaviPartner API Key>',
  ],
]);

echo $response->getBody();
```

```csharp Get group admission ticket
using RestSharp;

var client = new RestClient("https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./ticket/12345678-1234-1234-1234-123456789012?storeCode=EN&withAccessHistory=false&withAccessHistoryDetails=false&withWallet=false");
var request = new RestRequest(Method.GET);
request.AddHeader("x-np-api-key", "<NaviPartner API Key>");
IRestResponse response = client.Execute(request);
```

```swift Get group admission ticket
import Foundation

let headers = ["x-np-api-key": "<NaviPartner API Key>"]

let request = NSMutableURLRequest(url: NSURL(string: "https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./ticket/12345678-1234-1234-1234-123456789012?storeCode=EN&withAccessHistory=false&withAccessHistoryDetails=false&withWallet=false")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```