ドキュメント本文へスキップ
Ruby

client.exports

この名前空間のすべてのメソッドの、シグネチャ、パラメーター、戻り値、例。

メソッド

A zip of the whole workspace, as the Export page makes it: see what it would hold, start one, follow it while it is made and download it once it is ready.

exports.preview

See what an export would hold

スコープthreads:read
シグネチャ
preview(api_key: nil) -> Hash

Returns whether the workspace can be exported by the caller now, when the next export can start, the export still being made, if there is one, and how much an export would hold: conversations, attachments and their size, contacts, audiences, calendar events, templates, rules, labels, notes and addresses. When allowed is false, reason says why and counts is nil.

Only the workspace owner, or a member whose role holds every permission, can export the workspace: an API key, or an access token connected with every address. A key or token limited to particular addresses or domains is 422 capability_unsupported, and an account the workspace cannot export for is 403 export_not_permitted.

パラメーター

api_keyString

Overrides the client's API key for this call only.

戻り値

A Hash with allowed, reason, nextAvailableAt, activeExportId and counts, a Hash of threads, attachments, attachmentBytes, deletedFiles, contacts, audiences, calendarEvents, templates, rules, labels, notes and addresses.

例

preview = client.exports.preview puts "An export can start now: #{preview[:counts]}" if preview[:allowed] && preview[:nextAvailableAt].nil?

注意事項

  • reason is not-permitted, mailbox-login or two-factor-required.

ほかの提供先

API
GET /exports/preview
TypeScript
exports.preview()
Python
exports.preview()
CLI
openemail exports preview

exports.list

List the exports

スコープthreads:read
シグネチャ
list(limit: nil, offset: nil, api_key: nil) -> Hash

Returns every export of the workspace, newest first, a page at a time, with its status, its progress through the conversations and, once it is ready, its size, file name and when it is deleted.

Only the workspace owner, or a member whose role holds every permission, can export the workspace: an API key, or an access token connected with every address. A key or token limited to particular addresses or domains is 422 capability_unsupported, and an account the workspace cannot export for is 403 export_not_permitted.

パラメーター

limitInteger

Exports per page, from 1 to 100. The server defaults to 25.

offsetInteger

How many exports to skip.

api_keyString

Overrides the client's API key for this call only.

戻り値

A Hash, not an OpenEmail::Page, with data, an Array of export Hashes shaped like the one get returns, plus total and hasMore. Ask for the next page with offset:.

例

exports = client.exports.list ready = exports[:data].find { |item| item[:status] == "ready" }puts ready[:id], ready[:fileName] if ready

注意事項

  • A workspace can be exported once a day, and each export is kept for a year, so the list stays short.

ほかの提供先

API
GET /exports
TypeScript
exports.list()
Python
exports.list()
CLI
openemail exports list

exports.get

Retrieve an export

スコープthreads:read
シグネチャ
get(id, api_key: nil) -> Hash

Returns one export: its status, phase and progress while it is made, and once it is ready its size, file name and when it is deleted.

Only the workspace owner, or a member whose role holds every permission, can export the workspace: an API key, or an access token connected with every address. A key or token limited to particular addresses or domains is 422 capability_unsupported, and an account the workspace cannot export for is 403 export_not_permitted.

パラメーター

idString必須

The export id from start or list.

api_keyString

Overrides the client's API key for this call only.

戻り値

A Hash with id, status, phase, createdAt, createdBy, startedAt, finishedAt, expiresAt, sizeBytes, fileName, threadsDone, threadsTotal and error.

例

item = client.exports.get("exp_8c1e4a7f2b9d3e6a0c5f1b28") puts item[:status], item[:threadsDone], item[:threadsTotal]

注意事項

  • An unknown id is a 404.

ほかの提供先

API
GET /exports/{id}
TypeScript
exports.get()
Python
exports.get()
CLI
openemail exports get

exports.start

Start an export

スコープthreads:read
シグネチャ
start(api_key: nil) -> Hash

Starts making a zip of the whole workspace, as Export now on the Export page does, and returns the export, queued. It is made in the background: poll get until status is ready, then download it. One export runs at a time, and a workspace can be exported once a day.

Only the workspace owner, or a member whose role holds every permission, can export the workspace: an API key, or an access token connected with every address. A key or token limited to particular addresses or domains is 422 capability_unsupported, and an account the workspace cannot export for is 403 export_not_permitted.

パラメーター

api_keyString

Overrides the client's API key for this call only.

戻り値

A Hash for the new export, shaped like the one get returns.

例

started = client.exports.start puts started[:id], started[:status]

注意事項

  • With an OAuth access token it asks for a verification code: until the app has verified one, it is refused with 403 step_up_required. An API key is never asked.

  • An export already being made is 409 already_running, and a workspace exported in the last day is 429 export_limit_reached.

  • The SDK does not retry it.

ほかの提供先

API
POST /exports
TypeScript
exports.start()
Python
exports.start()
CLI
openemail exports start

exports.download

Download an export

スコープthreads:read
シグネチャ
download(id, api_key: nil) -> String

Returns the zip of a ready export, the same file the Download action on the Export page saves.

Only the workspace owner, or a member whose role holds every permission, can export the workspace: an API key, or an access token connected with every address. A key or token limited to particular addresses or domains is 422 capability_unsupported, and an account the workspace cannot export for is 403 export_not_permitted.

パラメーター

idString必須

The export id from start or list.

api_keyString

Overrides the client's API key for this call only.

戻り値

A binary String holding the zip.

例

item = client.exports.get("exp_8c1e4a7f2b9d3e6a0c5f1b28")zip = client.exports.download(item[:id]) File.binwrite(item[:fileName] || "export.zip", zip)

注意事項

  • With an OAuth access token it asks for a verification code: until the app has verified one, it is refused with 403 step_up_required. An API key is never asked.

  • Before the export is ready the call is 409 export_not_ready, and an export older than a year is 409 expired.

  • The whole zip is held in memory, and a large workspace makes a large zip.

ほかの提供先

API
GET /exports/{id}/content
TypeScript
exports.download()
Python
exports.download()
CLI
openemail exports download