diff --git a/README.md b/README.md index c9908eb..175def3 100644 --- a/README.md +++ b/README.md @@ -105,22 +105,7 @@ client.send_batch( ) ``` -### Email Templates API - -```ruby -require 'mailtrap' - -client = Mailtrap::Client.new(api_key: 'your-api-key') -templates = Mailtrap::EmailTemplatesAPI.new 3229, client - -templates.create( - name: 'Welcome Email', - subject: 'Welcome to Mailtrap!', - body_html: '

Hello

', - body_text: 'Hello', - category: 'welcome' -) -``` +### Usage Examples Refer to the [`examples`](examples) folder for more examples: @@ -129,6 +114,7 @@ Refer to the [`examples`](examples) folder for more examples: - [Batch Sending](examples/batch.rb) - [ActionMailer](examples/action_mailer.rb) - [Email Templates API](examples/email_templates_api.rb) +- [Projects API](examples/projects_api.rb) ### Content-Transfer-Encoding @@ -178,12 +164,18 @@ If you use classes which have `Sending` namespace, remove the namespace like in After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment. -To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org). +To install this gem onto your local machine, run `bundle exec rake install`. + +To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org). ## Contributing Bug reports and pull requests are welcome on [GitHub](https://github.com/mailtrap/mailtrap-ruby). This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](CODE_OF_CONDUCT.md). +All contributions are required to have rspec tests covering its functionality. + +Please be sure to update [README](README.md) with new examples and features when applicable. + ## License The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT). diff --git a/examples/projects_api.rb b/examples/projects_api.rb new file mode 100644 index 0000000..37f7735 --- /dev/null +++ b/examples/projects_api.rb @@ -0,0 +1,28 @@ +require 'mailtrap' + +account_id = 3229 +client = Mailtrap::Client.new(api_key: 'your-api-key') +projects_api = Mailtrap::ProjectsAPI.new(account_id, client) + +# Set your API credentials as environment variables +# export MAILTRAP_API_KEY='your-api-key' +# export MAILTRAP_ACCOUNT_ID=your-account-id +# +# projects_api = Mailtrap::ProjectsAPI.new + +# Get all projects +projects_api.list + +# Create a new project +project = projects_api.create( + name: 'Example Project' +) + +# Get a project +project = projects_api.get(project.id) + +# Update a project +project = projects_api.update(project.id, name: 'New Project name') + +# Delete a project +projects_api.delete(project.id) diff --git a/lib/mailtrap.rb b/lib/mailtrap.rb index 7c32975..3b6af23 100644 --- a/lib/mailtrap.rb +++ b/lib/mailtrap.rb @@ -10,6 +10,7 @@ require_relative 'mailtrap/contact_fields_api' require_relative 'mailtrap/contact_imports_api' require_relative 'mailtrap/suppressions_api' +require_relative 'mailtrap/projects_api' module Mailtrap # @!macro api_errors diff --git a/lib/mailtrap/inbox.rb b/lib/mailtrap/inbox.rb new file mode 100644 index 0000000..d845581 --- /dev/null +++ b/lib/mailtrap/inbox.rb @@ -0,0 +1,62 @@ +# frozen_string_literal: true + +module Mailtrap + # Data Transfer Object for Inbox + # @see https://api-docs.mailtrap.io/docs/mailtrap-api-docs/ee252e413d78a-create-project + # @attr_reader id [Integer] The inbox ID + # @attr_reader name [String] The inbox name + # @attr_reader username [String] The inbox username + # @attr_reader password [String, nil] The inbox password + # @attr_reader max_size [Integer] The maximum inbox size in MB + # @attr_reader status [String] The inbox status + # @attr_reader email_username [String] The email username + # @attr_reader email_username_enabled [Boolean] Whether the email username is enabled + # @attr_reader sent_messages_count [Integer] The count of sent messages + # @attr_reader forwarded_messages_count [Integer] The count of forwarded messages + # @attr_reader used [Integer] The used inbox size in MB + # @attr_reader forward_from_email_address [String] The forwarding email address + # @attr_reader project_id [Integer] The associated project ID + # @attr_reader domain [String] The inbox domain + # @attr_reader pop3_domain [String] The POP3 domain + # @attr_reader email_domain [String] The email domain + # @attr_reader api_domain [String] The API domain + # @attr_reader emails_count [Integer] The total number of emails + # @attr_reader emails_unread_count [Integer] The number of unread emails + # @attr_reader last_message_sent_at [String, nil] The timestamp of the last sent message + # @attr_reader smtp_ports [Array] The list of SMTP ports + # @attr_reader pop3_ports [Array] The list of POP3 ports + # @attr_reader max_message_size [Integer] The maximum message size in MB + # @attr_reader permissions [Hash] List of permissions + Inbox = Struct.new( + :id, + :name, + :username, + :password, + :max_size, + :status, + :email_username, + :email_username_enabled, + :sent_messages_count, + :forwarded_messages_count, + :used, + :forward_from_email_address, + :project_id, + :domain, + :pop3_domain, + :email_domain, + :api_domain, + :emails_count, + :emails_unread_count, + :last_message_sent_at, + :smtp_ports, + :pop3_ports, + :max_message_size, + :permissions, + keyword_init: true + ) do + # @return [Hash] The inbox attributes as a hash + def to_h + super.compact + end + end +end diff --git a/lib/mailtrap/project.rb b/lib/mailtrap/project.rb new file mode 100644 index 0000000..a7a531c --- /dev/null +++ b/lib/mailtrap/project.rb @@ -0,0 +1,25 @@ +# frozen_string_literal: true + +module Mailtrap + # Data Transfer Object for Project + # @see https://api-docs.mailtrap.io/docs/mailtrap-api-docs/ee252e413d78a-create-project + # @attr_reader id [Integer] The project ID + # @attr_reader name [String] The project name + # @attr_reader share_links [Hash] Admin and viewer share links + # @attr_reader inboxes [Array] Array of inboxes + # @attr_reader permissions [Hash] List of permissions + # + Project = Struct.new( + :id, + :name, + :share_links, + :inboxes, + :permissions, + keyword_init: true + ) do + # @return [Hash] The Project attributes as a hash + def to_h + super.compact + end + end +end diff --git a/lib/mailtrap/projects_api.rb b/lib/mailtrap/projects_api.rb new file mode 100644 index 0000000..5b326d5 --- /dev/null +++ b/lib/mailtrap/projects_api.rb @@ -0,0 +1,77 @@ +# frozen_string_literal: true + +require_relative 'base_api' +require_relative 'project' +require_relative 'inbox' + +module Mailtrap + class ProjectsAPI + include BaseAPI + + self.supported_options = %i[name] + + self.response_class = Project + + # Lists all projects for the account + # @return [Array] Array of projects + # @!macro api_errors + def list + base_list + end + + # Retrieves a specific project + # @param project_id [Integer] The project ID + # @return [Project] Project object + # @!macro api_errors + def get(project_id) + base_get(project_id) + end + + # Creates a new project + # @param [Hash] options The parameters to create + # @option options [String] :name The project name + # @return [Project] Created project object + # @!macro api_errors + # @raise [ArgumentError] If invalid options are provided + def create(options) + base_create(options) + end + + # Updates an existing project + # @param project_id [Integer] The project ID + # @param [Hash] options The parameters to update + # @return [Project] Updated project object + # @!macro api_errors + # @raise [ArgumentError] If invalid options are provided + def update(project_id, options) + base_update(project_id, options) + end + + # Deletes a project + # @param project_id [Integer] The project ID + # @return nil + # @!macro api_errors + def delete(project_id) + base_delete(project_id) + end + + def build_entity(options, response_class) + response_class.new( + **options.slice(*(response_class.members - [:inboxes])), + inboxes: options[:inboxes]&.map do |inbox| + inbox.is_a?(Mailtrap::Inbox) ? inbox : Mailtrap::Inbox.new(**inbox) + end + ) + end + + private + + def base_path + "/api/accounts/#{account_id}/projects" + end + + def wrap_request(options) + { project: options } + end + end +end diff --git a/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_create/maps_response_data_to_Project_object.yml b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_create/maps_response_data_to_Project_object.yml new file mode 100644 index 0000000..dc1b820 --- /dev/null +++ b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_create/maps_response_data_to_Project_object.yml @@ -0,0 +1,168 @@ +--- +http_interactions: +- request: + method: post + uri: https://mailtrap.io/api/accounts/1111111/projects + body: + encoding: UTF-8 + string: '{"project":{"name":"New Project"}}' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 200 + message: OK + headers: + Date: + - Thu, 06 Nov 2025 17:22:47 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '144' + Etag: + - W/"068e7482a443be1cfa101ad7b01feb49" + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-xBW8pcSWFuexQy0xQfhkGw==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - e650c437-d721-4974-b354-62ccedcdd216 + X-Runtime: + - '0.085443' + X-Cloud-Trace-Context: + - 17bcba5cef204f30c89d68f7d8aa8d0b;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a64668494c4ede-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"id":2568506,"name":"New Project","share_links":{"admin":"https://mailtrap.io/projects/2568506/share/REDACTED","viewer":"https://mailtrap.io/projects/2568506/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}' + recorded_at: Thu, 06 Nov 2025 17:22:47 GMT +recorded_with: VCR 6.2.0 diff --git a/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_create/when_API_returns_an_error/raises_a_Mailtrap_Error.yml b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_create/when_API_returns_an_error/raises_a_Mailtrap_Error.yml new file mode 100644 index 0000000..4c44484 --- /dev/null +++ b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_create/when_API_returns_an_error/raises_a_Mailtrap_Error.yml @@ -0,0 +1,166 @@ +--- +http_interactions: +- request: + method: post + uri: https://mailtrap.io/api/accounts/1111111/projects + body: + encoding: UTF-8 + string: '{"project":{"name":""}}' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 422 + message: Unprocessable Entity + headers: + Date: + - Thu, 06 Nov 2025 17:22:48 GMT + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '79' + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '142' + Cache-Control: + - no-cache + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-BWGcN9hcn2TkDTEK96tpow==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - 67ba748d-d8b7-451b-9831-d6cf9ca60321 + X-Runtime: + - '0.019134' + X-Cloud-Trace-Context: + - 202ae565c50b43798fc2ab188e7ad5ac;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a6466c4ba670dc-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"errors":{"name":["can''t be blank","is too short (minimum is 2 characters)"]}}' + recorded_at: Thu, 06 Nov 2025 17:22:48 GMT +recorded_with: VCR 6.2.0 diff --git a/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_create/with_hash_request/maps_response_data_to_Project_object.yml b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_create/with_hash_request/maps_response_data_to_Project_object.yml new file mode 100644 index 0000000..cc8704f --- /dev/null +++ b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_create/with_hash_request/maps_response_data_to_Project_object.yml @@ -0,0 +1,168 @@ +--- +http_interactions: +- request: + method: post + uri: https://mailtrap.io/api/accounts/1111111/projects + body: + encoding: UTF-8 + string: '{"project":{"name":"New Project"}}' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 200 + message: OK + headers: + Date: + - Thu, 06 Nov 2025 17:22:48 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '143' + Etag: + - W/"555c37419991b9243a4ee4a8199dde11" + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-zgTYA5BLd1wyNN7mPfj6ZA==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - cc4b30b1-8d31-471c-a233-b0c29a13bbc7 + X-Runtime: + - '0.203603' + X-Cloud-Trace-Context: + - 11447d3d125e4f9187fcfeb1d48a0525;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a64669fd1be5d6-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"id":2568507,"name":"New Project","share_links":{"admin":"https://mailtrap.io/projects/2568507/share/REDACTED","viewer":"https://mailtrap.io/projects/2568507/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}' + recorded_at: Thu, 06 Nov 2025 17:22:48 GMT +recorded_with: VCR 6.2.0 diff --git a/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_delete/returns_deleted_project_id.yml b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_delete/returns_deleted_project_id.yml new file mode 100644 index 0000000..0420296 --- /dev/null +++ b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_delete/returns_deleted_project_id.yml @@ -0,0 +1,333 @@ +--- +http_interactions: +- request: + method: post + uri: https://mailtrap.io/api/accounts/1111111/projects + body: + encoding: UTF-8 + string: '{"project":{"name":"Project to Delete"}}' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 200 + message: OK + headers: + Date: + - Thu, 06 Nov 2025 17:22:50 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '147' + Etag: + - W/"042f85c44df5dda84dd0a212a8a84067" + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-l12T453K35WyYwM58IB4Hg==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - 974beb3a-da90-4154-82de-cbaa03b9eecf + X-Runtime: + - '0.072132' + X-Cloud-Trace-Context: + - e1b497c7012c49a88f7c34a4285079aa;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a646799b97b813-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"id":2568512,"name":"Project to Delete","share_links":{"admin":"https://mailtrap.io/projects/2568512/share/REDACTED","viewer":"https://mailtrap.io/projects/2568512/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}' + recorded_at: Thu, 06 Nov 2025 17:22:50 GMT +- request: + method: delete + uri: https://mailtrap.io/api/accounts/1111111/projects/2568512 + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 200 + message: OK + headers: + Date: + - Thu, 06 Nov 2025 17:22:50 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '146' + Etag: + - W/"268931c8d55249081f5793b71c967b16" + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-zNr/z6EA5p0ny51tN7ID4g==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - 8523fef5-9a69-43fe-a889-f3134b03ca73 + X-Runtime: + - '0.082012' + X-Cloud-Trace-Context: + - 29e3d8994f6b4a79831a029a0bf2af97;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a6467b1875bc36-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"id":2568512}' + recorded_at: Thu, 06 Nov 2025 17:22:50 GMT +recorded_with: VCR 6.2.0 diff --git a/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_delete/when_project_does_not_exist/raises_not_found_error.yml b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_delete/when_project_does_not_exist/raises_not_found_error.yml new file mode 100644 index 0000000..c530d0c --- /dev/null +++ b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_delete/when_project_does_not_exist/raises_not_found_error.yml @@ -0,0 +1,331 @@ +--- +http_interactions: +- request: + method: post + uri: https://mailtrap.io/api/accounts/1111111/projects + body: + encoding: UTF-8 + string: '{"project":{"name":"Project to Delete"}}' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 200 + message: OK + headers: + Date: + - Thu, 06 Nov 2025 17:22:51 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '145' + Etag: + - W/"0e4606bbbb28136031c4cdbe1950f3b9" + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-vW9aAU73C+i0C8E1tR0Y3g==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - 77b3b743-68f1-49d6-9870-c317f392dd1b + X-Runtime: + - '0.080663' + X-Cloud-Trace-Context: + - d809888ce0ce4000c29024f512e7e29f;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a6467cbc9ac3b5-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"id":2568513,"name":"Project to Delete","share_links":{"admin":"https://mailtrap.io/projects/2568513/share/REDACTED","viewer":"https://mailtrap.io/projects/2568513/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}' + recorded_at: Thu, 06 Nov 2025 17:22:51 GMT +- request: + method: delete + uri: https://mailtrap.io/api/accounts/1111111/projects/999999 + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 404 + message: Not Found + headers: + Date: + - Thu, 06 Nov 2025 17:22:51 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '144' + Cache-Control: + - no-cache + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-j3/wbJxonzcYbjFu5E0zqQ==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - 21ff0366-922d-4fb0-be4a-f9044f36fe14 + X-Runtime: + - '0.011877' + X-Cloud-Trace-Context: + - 74a6838b91ab47e88a4d153953752848;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a6467e4bea25bc-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"error":"Not Found"}' + recorded_at: Thu, 06 Nov 2025 17:22:51 GMT +recorded_with: VCR 6.2.0 diff --git a/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_get/maps_response_data_to_Project_object.yml b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_get/maps_response_data_to_Project_object.yml new file mode 100644 index 0000000..3b3146c --- /dev/null +++ b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_get/maps_response_data_to_Project_object.yml @@ -0,0 +1,333 @@ +--- +http_interactions: +- request: + method: post + uri: https://mailtrap.io/api/accounts/1111111/projects + body: + encoding: UTF-8 + string: '{"project":{"name":"Test Project"}}' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 200 + message: OK + headers: + Date: + - Thu, 06 Nov 2025 17:22:46 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '148' + Etag: + - W/"5469edc88d85d2b4ea681a9801afc03b" + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-9EEV+EEOdBwB2SWsPrLmEw==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - 862dbc97-ad2d-4cdf-96b0-92578f2327f1 + X-Runtime: + - '0.087015' + X-Cloud-Trace-Context: + - d664adbe9c0a4511824b9953ffbfadca;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a6465be8e0147a-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"id":2568504,"name":"Test Project","share_links":{"admin":"https://mailtrap.io/projects/2568504/share/REDACTED","viewer":"https://mailtrap.io/projects/2568504/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}' + recorded_at: Thu, 06 Nov 2025 17:22:46 GMT +- request: + method: get + uri: https://mailtrap.io/api/accounts/1111111/projects/2568504 + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 200 + message: OK + headers: + Date: + - Thu, 06 Nov 2025 17:22:46 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '147' + Etag: + - W/"5469edc88d85d2b4ea681a9801afc03b" + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-Zb6a7UXxs3Y0y11EKM04nA==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - 5bea4011-bd02-4643-b3e0-05a76ae4e060 + X-Runtime: + - '0.080132' + X-Cloud-Trace-Context: + - 725463e030b745ae87bdb7f989ba78a1;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a6465f9e7fad22-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"id":2568504,"name":"Test Project","share_links":{"admin":"https://mailtrap.io/projects/2568504/share/REDACTED","viewer":"https://mailtrap.io/projects/2568504/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}' + recorded_at: Thu, 06 Nov 2025 17:22:46 GMT +recorded_with: VCR 6.2.0 diff --git a/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_get/when_project_does_not_exist/raises_not_found_error.yml b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_get/when_project_does_not_exist/raises_not_found_error.yml new file mode 100644 index 0000000..eefc9b8 --- /dev/null +++ b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_get/when_project_does_not_exist/raises_not_found_error.yml @@ -0,0 +1,331 @@ +--- +http_interactions: +- request: + method: post + uri: https://mailtrap.io/api/accounts/1111111/projects + body: + encoding: UTF-8 + string: '{"project":{"name":"Test Project"}}' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 200 + message: OK + headers: + Date: + - Thu, 06 Nov 2025 17:22:47 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '146' + Etag: + - W/"7ffa4657748461ef12280122fe6a8858" + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-VX2Dcy0hW9sA6H2LBbCvDQ==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - 02d2f921-3856-4037-9a87-062e0b4d54f5 + X-Runtime: + - '0.081251' + X-Cloud-Trace-Context: + - 37ed80ca4c4145808aa554b32a4374d7;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a6466338b2bf47-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"id":2568505,"name":"Test Project","share_links":{"admin":"https://mailtrap.io/projects/2568505/share/REDACTED","viewer":"https://mailtrap.io/projects/2568505/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}' + recorded_at: Thu, 06 Nov 2025 17:22:47 GMT +- request: + method: get + uri: https://mailtrap.io/api/accounts/1111111/projects/999999 + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 404 + message: Not Found + headers: + Date: + - Thu, 06 Nov 2025 17:22:47 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '145' + Cache-Control: + - no-cache + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-C/GUQkCCApVLg4vBe/aSXg==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - d0e27b3b-02a4-49bf-8664-a96dd7399e61 + X-Runtime: + - '0.027993' + X-Cloud-Trace-Context: + - 9209d38c155f4fbbcdf8d0345c9054ab;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a646670987b617-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"error":"Not Found"}' + recorded_at: Thu, 06 Nov 2025 17:22:47 GMT +recorded_with: VCR 6.2.0 diff --git a/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_list/maps_response_data_to_Project_objects.yml b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_list/maps_response_data_to_Project_objects.yml new file mode 100644 index 0000000..972efab --- /dev/null +++ b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_list/maps_response_data_to_Project_objects.yml @@ -0,0 +1,399 @@ +--- +http_interactions: +- request: + method: get + uri: https://mailtrap.io/api/accounts/1111111/projects + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 200 + message: OK + headers: + Date: + - Thu, 06 Nov 2025 17:22:45 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + Vary: + - Accept + - Accept-Encoding + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '149' + Etag: + - W/"511f796eca774728d0caee471d0bfeca" + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-yqOvR9fkHTyOgVirCQPdlQ==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - dac95271-42b5-4cff-8369-d8990d6789a5 + X-Runtime: + - '4.772312' + X-Cloud-Trace-Context: + - bc572ddec18744b4c2949b74b55703fb;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a6463688497a60-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '[{"id":1536451,"name":"My Project","share_links":{"admin":"https://mailtrap.io/projects/1536451/share/REDACTED","viewer":"https://mailtrap.io/projects/1536451/share/REDACTED"},"inboxes":[{"id":2117479,"name":"My + Inbox","username":"8382a82526761f","status":"active","email_username":"730e82205d-7e378a","email_username_enabled":true,"sent_messages_count":0,"forwarded_messages_count":0,"used":true,"forward_from_email_address":"aACCOUNT_ID-i2117479@forward.mailtrap.info","project_id":1536451,"password":"952106364e8818","domain":"sandbox.smtp.mailtrap.io","pop3_domain":"pop3.mailtrap.io","email_domain":"inbox.mailtrap.io","smtp_ports":[25,465,587,2525],"pop3_ports":[1100,9950],"api_domain":"sandbox.api.mailtrap.io","emails_count":87,"emails_unread_count":0,"last_message_sent_at":"2025-01-03T16:37:44.583Z","max_size":1000,"max_message_size":26214400,"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2598195,"name":"New + Inbox 3","username":"488ab40656a0ac","status":"active","email_username":"new-inbox-3-b9d2b9","email_username_enabled":true,"sent_messages_count":0,"forwarded_messages_count":0,"used":true,"forward_from_email_address":"aACCOUNT_ID-i2598195@forward.mailtrap.info","project_id":1536451,"password":"54b965b17b46a9","domain":"sandbox.smtp.mailtrap.io","pop3_domain":"pop3.mailtrap.io","email_domain":"inbox.mailtrap.io","smtp_ports":[25,465,587,2525],"pop3_ports":[1100,9950],"api_domain":"sandbox.api.mailtrap.io","emails_count":2,"emails_unread_count":0,"last_message_sent_at":"2024-03-30T18:02:12.295Z","max_size":1000,"max_message_size":26214400,"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":1886601,"name":"Freelance + per dev","share_links":{"admin":"https://mailtrap.io/projects/1886601/share/REDACTED","viewer":"https://mailtrap.io/projects/1886601/share/REDACTED"},"inboxes":[{"id":2639689,"name":"#php-developer-artur-edamov","username":"0e1b2edd08898d","status":"active","email_username":"10e854d304-cd6a55","email_username_enabled":true,"sent_messages_count":0,"forwarded_messages_count":0,"used":true,"forward_from_email_address":"aACCOUNT_ID-i2639689@forward.mailtrap.info","project_id":1886601,"password":"0dc2143d3c4bcf","domain":"sandbox.smtp.mailtrap.io","pop3_domain":"pop3.mailtrap.io","email_domain":"inbox.mailtrap.io","smtp_ports":[25,465,587,2525],"pop3_ports":[1100,9950],"api_domain":"sandbox.api.mailtrap.io","emails_count":2,"emails_unread_count":0,"last_message_sent_at":"2024-05-09T21:21:24.000Z","max_size":1000,"max_message_size":26214400,"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2750032,"name":"IT-248","username":"0a5db6d04b5567","status":"active","email_username":"c7884b9b27-2a5e4e","email_username_enabled":true,"sent_messages_count":0,"forwarded_messages_count":0,"used":true,"forward_from_email_address":"aACCOUNT_ID-i2750032@forward.mailtrap.info","project_id":1886601,"password":"3f75964c517555","domain":"sandbox.smtp.mailtrap.io","pop3_domain":"pop3.mailtrap.io","email_domain":"inbox.mailtrap.io","smtp_ports":[25,465,587,2525],"pop3_ports":[1100,9950],"api_domain":"sandbox.api.mailtrap.io","emails_count":10,"emails_unread_count":10,"last_message_sent_at":"2024-06-01T22:57:16.000Z","max_size":1000,"max_message_size":26214400,"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2803763,"name":"IT-316: + narhovhannisian@gmail.com","username":"273a280aadeb6e","status":"active","email_username":"9070d30c7d-6b8878","email_username_enabled":true,"sent_messages_count":0,"forwarded_messages_count":0,"used":false,"forward_from_email_address":"aACCOUNT_ID-i2803763@forward.mailtrap.info","project_id":1886601,"password":"b189dfc9c353c6","domain":"sandbox.smtp.mailtrap.io","pop3_domain":"pop3.mailtrap.io","email_domain":"inbox.mailtrap.io","smtp_ports":[25,465,587,2525],"pop3_ports":[1100,9950],"api_domain":"sandbox.api.mailtrap.io","emails_count":0,"emails_unread_count":0,"last_message_sent_at":null,"max_size":1000,"max_message_size":26214400,"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2827176,"name":"IT-348: + reg+g@leadnode.io","username":"546e95d8659e0d","status":"active","email_username":"4bb7078012-4952de","email_username_enabled":true,"sent_messages_count":0,"forwarded_messages_count":0,"used":true,"forward_from_email_address":"aACCOUNT_ID-i2827176@forward.mailtrap.info","project_id":1886601,"password":"00354751350f03","domain":"sandbox.smtp.mailtrap.io","pop3_domain":"pop3.mailtrap.io","email_domain":"inbox.mailtrap.io","smtp_ports":[25,465,587,2525],"pop3_ports":[1100,9950],"api_domain":"sandbox.api.mailtrap.io","emails_count":3,"emails_unread_count":3,"last_message_sent_at":"2024-05-24T09:01:52.000Z","max_size":1000,"max_message_size":26214400,"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2869179,"name":"IT-395: + anasahmed92@live.com","username":"938e4fb7050cdb","status":"active","email_username":"d9af24a335-93cda8","email_username_enabled":true,"sent_messages_count":0,"forwarded_messages_count":0,"used":true,"forward_from_email_address":"aACCOUNT_ID-i2869179@forward.mailtrap.info","project_id":1886601,"password":"81e45511a3bc0e","domain":"sandbox.smtp.mailtrap.io","pop3_domain":"pop3.mailtrap.io","email_domain":"inbox.mailtrap.io","smtp_ports":[25,465,587,2525],"pop3_ports":[1100,9950],"api_domain":"sandbox.api.mailtrap.io","emails_count":44,"emails_unread_count":44,"last_message_sent_at":"2025-02-13T13:36:02.000Z","max_size":1000,"max_message_size":26214400,"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":3244543,"name":"IT-973: + zhaparoff@gmail.com","username":"aac75b0883e5df","status":"active","email_username":"2934fc539d-461ce5","email_username_enabled":true,"sent_messages_count":0,"forwarded_messages_count":0,"used":false,"forward_from_email_address":"aACCOUNT_ID-i3244543@forward.mailtrap.info","project_id":1886601,"password":"67cbfb43dfad94","domain":"sandbox.smtp.mailtrap.io","pop3_domain":"pop3.mailtrap.io","email_domain":"inbox.mailtrap.io","smtp_ports":[25,465,587,2525],"pop3_ports":[1100,9950],"api_domain":"sandbox.api.mailtrap.io","emails_count":0,"emails_unread_count":0,"last_message_sent_at":null,"max_size":1000,"max_message_size":26214400,"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":3447218,"name":"#freelance-dev-oleksandr-bukhtiiarov","username":"82eda9bf7c1b3b","status":"active","email_username":"d3b391d162-05b895","email_username_enabled":true,"sent_messages_count":0,"forwarded_messages_count":0,"used":false,"forward_from_email_address":"aACCOUNT_ID-i3447218@forward.mailtrap.info","project_id":1886601,"password":"0bf7ff67b64d93","domain":"sandbox.smtp.mailtrap.io","pop3_domain":"pop3.mailtrap.io","email_domain":"inbox.mailtrap.io","smtp_ports":[25,465,587,2525],"pop3_ports":[1100,9950],"api_domain":"sandbox.api.mailtrap.io","emails_count":0,"emails_unread_count":0,"last_message_sent_at":null,"max_size":1000,"max_message_size":26214400,"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":3447223,"name":"#ext-js-developer-artem-litvinenko","username":"5f144f668d427e","status":"active","email_username":"cc57d3ca6e-292fc7","email_username_enabled":true,"sent_messages_count":8,"forwarded_messages_count":0,"used":true,"forward_from_email_address":"aACCOUNT_ID-i3447223@forward.mailtrap.info","project_id":1886601,"password":"c689b190526d93","domain":"sandbox.smtp.mailtrap.io","pop3_domain":"pop3.mailtrap.io","email_domain":"inbox.mailtrap.io","smtp_ports":[25,465,587,2525],"pop3_ports":[1100,9950],"api_domain":"sandbox.api.mailtrap.io","emails_count":325,"emails_unread_count":152,"last_message_sent_at":"2025-11-04T11:36:49.000Z","max_size":1000,"max_message_size":26214400,"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":3950294,"name":"IT-1923: + #mailtrap-developer-python-sdk","username":"2676e8f48d8a61","status":"active","email_username":"1e364e09c1-0a1010","email_username_enabled":true,"sent_messages_count":0,"forwarded_messages_count":0,"used":false,"forward_from_email_address":"aACCOUNT_ID-i3950294@forward.mailtrap.info","project_id":1886601,"password":"ab43c934ea1b23","domain":"sandbox.smtp.mailtrap.io","pop3_domain":"pop3.mailtrap.io","email_domain":"inbox.mailtrap.io","smtp_ports":[25,465,587,2525],"pop3_ports":[1100,9950],"api_domain":"sandbox.api.mailtrap.io","emails_count":0,"emails_unread_count":0,"last_message_sent_at":null,"max_size":1000,"max_message_size":26214400,"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":3960195,"name":"IT-1834: jurgen.smirnoff@gmail.com","username":"9fa00a713daaab","status":"active","email_username":"b3ce3a93a7-5cb603","email_username_enabled":true,"sent_messages_count":0,"forwarded_messages_count":0,"used":false,"forward_from_email_address":"aACCOUNT_ID-i3960195@forward.mailtrap.info","project_id":1886601,"password":"eefcda4580d160","domain":"sandbox.smtp.mailtrap.io","pop3_domain":"pop3.mailtrap.io","email_domain":"inbox.mailtrap.io","smtp_ports":[25,465,587,2525],"pop3_ports":[1100,9950],"api_domain":"sandbox.api.mailtrap.io","emails_count":0,"emails_unread_count":0,"last_message_sent_at":null,"max_size":1000,"max_message_size":26214400,"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486140,"name":"project + 591","share_links":{"admin":"https://mailtrap.io/projects/2486140/share/REDACTED","viewer":"https://mailtrap.io/projects/2486140/share/REDACTED"},"inboxes":[{"id":3976586,"name":"IT-1834: + jurgen.smirnoff@gmail.com#2","username":"4579ee19f8f87c","status":"active","email_username":"f70278ba14-d95f55","email_username_enabled":true,"sent_messages_count":0,"forwarded_messages_count":0,"used":false,"forward_from_email_address":"aACCOUNT_ID-i3976586@forward.mailtrap.info","project_id":2486140,"password":"29d2dbb1964565","domain":"sandbox.smtp.mailtrap.io","pop3_domain":"pop3.mailtrap.io","email_domain":"inbox.mailtrap.io","smtp_ports":[25,465,587,2525],"pop3_ports":[1100,9950],"api_domain":"sandbox.api.mailtrap.io","emails_count":0,"emails_unread_count":0,"last_message_sent_at":null,"max_size":1000,"max_message_size":26214400,"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486206,"name":"new + project","share_links":{"admin":"https://mailtrap.io/projects/2486206/share/REDACTED","viewer":"https://mailtrap.io/projects/2486206/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486689,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486689/share/REDACTED","viewer":"https://mailtrap.io/projects/2486689/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486690,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486690/share/REDACTED","viewer":"https://mailtrap.io/projects/2486690/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486691,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486691/share/REDACTED","viewer":"https://mailtrap.io/projects/2486691/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486692,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486692/share/REDACTED","viewer":"https://mailtrap.io/projects/2486692/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486693,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486693/share/REDACTED","viewer":"https://mailtrap.io/projects/2486693/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486694,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486694/share/REDACTED","viewer":"https://mailtrap.io/projects/2486694/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486695,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486695/share/REDACTED","viewer":"https://mailtrap.io/projects/2486695/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486696,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486696/share/REDACTED","viewer":"https://mailtrap.io/projects/2486696/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486698,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486698/share/REDACTED","viewer":"https://mailtrap.io/projects/2486698/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486703,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486703/share/REDACTED","viewer":"https://mailtrap.io/projects/2486703/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486704,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486704/share/REDACTED","viewer":"https://mailtrap.io/projects/2486704/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486705,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486705/share/REDACTED","viewer":"https://mailtrap.io/projects/2486705/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486706,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486706/share/REDACTED","viewer":"https://mailtrap.io/projects/2486706/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486707,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486707/share/REDACTED","viewer":"https://mailtrap.io/projects/2486707/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486708,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486708/share/REDACTED","viewer":"https://mailtrap.io/projects/2486708/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486709,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486709/share/REDACTED","viewer":"https://mailtrap.io/projects/2486709/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486710,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486710/share/REDACTED","viewer":"https://mailtrap.io/projects/2486710/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486712,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486712/share/REDACTED","viewer":"https://mailtrap.io/projects/2486712/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486719,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486719/share/REDACTED","viewer":"https://mailtrap.io/projects/2486719/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486720,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486720/share/REDACTED","viewer":"https://mailtrap.io/projects/2486720/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486721,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486721/share/REDACTED","viewer":"https://mailtrap.io/projects/2486721/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486722,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486722/share/REDACTED","viewer":"https://mailtrap.io/projects/2486722/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486723,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486723/share/REDACTED","viewer":"https://mailtrap.io/projects/2486723/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486724,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486724/share/REDACTED","viewer":"https://mailtrap.io/projects/2486724/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486725,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486725/share/REDACTED","viewer":"https://mailtrap.io/projects/2486725/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486726,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486726/share/REDACTED","viewer":"https://mailtrap.io/projects/2486726/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486728,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486728/share/REDACTED","viewer":"https://mailtrap.io/projects/2486728/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486731,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486731/share/REDACTED","viewer":"https://mailtrap.io/projects/2486731/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486732,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486732/share/REDACTED","viewer":"https://mailtrap.io/projects/2486732/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486733,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486733/share/REDACTED","viewer":"https://mailtrap.io/projects/2486733/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486734,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486734/share/REDACTED","viewer":"https://mailtrap.io/projects/2486734/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486735,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486735/share/REDACTED","viewer":"https://mailtrap.io/projects/2486735/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486736,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486736/share/REDACTED","viewer":"https://mailtrap.io/projects/2486736/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486737,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486737/share/REDACTED","viewer":"https://mailtrap.io/projects/2486737/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486738,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486738/share/REDACTED","viewer":"https://mailtrap.io/projects/2486738/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486740,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486740/share/REDACTED","viewer":"https://mailtrap.io/projects/2486740/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486741,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486741/share/REDACTED","viewer":"https://mailtrap.io/projects/2486741/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486742,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486742/share/REDACTED","viewer":"https://mailtrap.io/projects/2486742/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486743,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486743/share/REDACTED","viewer":"https://mailtrap.io/projects/2486743/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486744,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486744/share/REDACTED","viewer":"https://mailtrap.io/projects/2486744/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486745,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486745/share/REDACTED","viewer":"https://mailtrap.io/projects/2486745/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486746,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486746/share/REDACTED","viewer":"https://mailtrap.io/projects/2486746/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486747,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486747/share/REDACTED","viewer":"https://mailtrap.io/projects/2486747/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486748,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486748/share/REDACTED","viewer":"https://mailtrap.io/projects/2486748/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486750,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486750/share/REDACTED","viewer":"https://mailtrap.io/projects/2486750/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486752,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486752/share/REDACTED","viewer":"https://mailtrap.io/projects/2486752/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486753,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486753/share/REDACTED","viewer":"https://mailtrap.io/projects/2486753/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486754,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486754/share/REDACTED","viewer":"https://mailtrap.io/projects/2486754/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486755,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486755/share/REDACTED","viewer":"https://mailtrap.io/projects/2486755/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486756,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486756/share/REDACTED","viewer":"https://mailtrap.io/projects/2486756/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486757,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486757/share/REDACTED","viewer":"https://mailtrap.io/projects/2486757/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486758,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486758/share/REDACTED","viewer":"https://mailtrap.io/projects/2486758/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486759,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486759/share/REDACTED","viewer":"https://mailtrap.io/projects/2486759/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486761,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486761/share/REDACTED","viewer":"https://mailtrap.io/projects/2486761/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486762,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486762/share/REDACTED","viewer":"https://mailtrap.io/projects/2486762/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486763,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486763/share/REDACTED","viewer":"https://mailtrap.io/projects/2486763/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486764,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486764/share/REDACTED","viewer":"https://mailtrap.io/projects/2486764/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486765,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486765/share/REDACTED","viewer":"https://mailtrap.io/projects/2486765/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486766,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486766/share/REDACTED","viewer":"https://mailtrap.io/projects/2486766/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486767,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486767/share/REDACTED","viewer":"https://mailtrap.io/projects/2486767/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486768,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486768/share/REDACTED","viewer":"https://mailtrap.io/projects/2486768/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486769,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486769/share/REDACTED","viewer":"https://mailtrap.io/projects/2486769/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486771,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486771/share/REDACTED","viewer":"https://mailtrap.io/projects/2486771/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486774,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486774/share/REDACTED","viewer":"https://mailtrap.io/projects/2486774/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486775,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486775/share/REDACTED","viewer":"https://mailtrap.io/projects/2486775/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486776,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486776/share/REDACTED","viewer":"https://mailtrap.io/projects/2486776/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486777,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486777/share/REDACTED","viewer":"https://mailtrap.io/projects/2486777/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486778,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486778/share/REDACTED","viewer":"https://mailtrap.io/projects/2486778/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486779,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486779/share/REDACTED","viewer":"https://mailtrap.io/projects/2486779/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486780,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486780/share/REDACTED","viewer":"https://mailtrap.io/projects/2486780/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486781,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486781/share/REDACTED","viewer":"https://mailtrap.io/projects/2486781/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486783,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486783/share/REDACTED","viewer":"https://mailtrap.io/projects/2486783/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486824,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486824/share/REDACTED","viewer":"https://mailtrap.io/projects/2486824/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486825,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486825/share/REDACTED","viewer":"https://mailtrap.io/projects/2486825/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486826,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486826/share/REDACTED","viewer":"https://mailtrap.io/projects/2486826/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486827,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486827/share/REDACTED","viewer":"https://mailtrap.io/projects/2486827/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486828,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486828/share/REDACTED","viewer":"https://mailtrap.io/projects/2486828/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486829,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486829/share/REDACTED","viewer":"https://mailtrap.io/projects/2486829/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486830,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486830/share/REDACTED","viewer":"https://mailtrap.io/projects/2486830/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486831,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486831/share/REDACTED","viewer":"https://mailtrap.io/projects/2486831/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486833,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486833/share/REDACTED","viewer":"https://mailtrap.io/projects/2486833/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486834,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486834/share/REDACTED","viewer":"https://mailtrap.io/projects/2486834/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486835,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486835/share/REDACTED","viewer":"https://mailtrap.io/projects/2486835/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486836,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486836/share/REDACTED","viewer":"https://mailtrap.io/projects/2486836/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486837,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486837/share/REDACTED","viewer":"https://mailtrap.io/projects/2486837/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486838,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486838/share/REDACTED","viewer":"https://mailtrap.io/projects/2486838/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486839,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486839/share/REDACTED","viewer":"https://mailtrap.io/projects/2486839/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486840,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486840/share/REDACTED","viewer":"https://mailtrap.io/projects/2486840/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486841,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486841/share/REDACTED","viewer":"https://mailtrap.io/projects/2486841/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486843,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486843/share/REDACTED","viewer":"https://mailtrap.io/projects/2486843/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486844,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486844/share/REDACTED","viewer":"https://mailtrap.io/projects/2486844/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486845,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486845/share/REDACTED","viewer":"https://mailtrap.io/projects/2486845/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486846,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486846/share/REDACTED","viewer":"https://mailtrap.io/projects/2486846/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486847,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486847/share/REDACTED","viewer":"https://mailtrap.io/projects/2486847/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486848,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486848/share/REDACTED","viewer":"https://mailtrap.io/projects/2486848/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486849,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486849/share/REDACTED","viewer":"https://mailtrap.io/projects/2486849/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486850,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486850/share/REDACTED","viewer":"https://mailtrap.io/projects/2486850/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486851,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486851/share/REDACTED","viewer":"https://mailtrap.io/projects/2486851/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486854,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486854/share/REDACTED","viewer":"https://mailtrap.io/projects/2486854/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486856,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486856/share/REDACTED","viewer":"https://mailtrap.io/projects/2486856/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486857,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486857/share/REDACTED","viewer":"https://mailtrap.io/projects/2486857/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486858,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486858/share/REDACTED","viewer":"https://mailtrap.io/projects/2486858/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486859,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486859/share/REDACTED","viewer":"https://mailtrap.io/projects/2486859/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486860,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486860/share/REDACTED","viewer":"https://mailtrap.io/projects/2486860/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486861,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486861/share/REDACTED","viewer":"https://mailtrap.io/projects/2486861/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486862,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486862/share/REDACTED","viewer":"https://mailtrap.io/projects/2486862/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486863,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486863/share/REDACTED","viewer":"https://mailtrap.io/projects/2486863/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486865,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486865/share/REDACTED","viewer":"https://mailtrap.io/projects/2486865/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486866,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486866/share/REDACTED","viewer":"https://mailtrap.io/projects/2486866/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486867,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486867/share/REDACTED","viewer":"https://mailtrap.io/projects/2486867/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486868,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486868/share/REDACTED","viewer":"https://mailtrap.io/projects/2486868/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486869,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486869/share/REDACTED","viewer":"https://mailtrap.io/projects/2486869/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486870,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486870/share/REDACTED","viewer":"https://mailtrap.io/projects/2486870/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486871,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486871/share/REDACTED","viewer":"https://mailtrap.io/projects/2486871/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486872,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486872/share/REDACTED","viewer":"https://mailtrap.io/projects/2486872/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486873,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486873/share/REDACTED","viewer":"https://mailtrap.io/projects/2486873/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486875,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486875/share/REDACTED","viewer":"https://mailtrap.io/projects/2486875/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486881,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486881/share/REDACTED","viewer":"https://mailtrap.io/projects/2486881/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486882,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486882/share/REDACTED","viewer":"https://mailtrap.io/projects/2486882/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486883,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486883/share/REDACTED","viewer":"https://mailtrap.io/projects/2486883/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486884,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486884/share/REDACTED","viewer":"https://mailtrap.io/projects/2486884/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486885,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486885/share/REDACTED","viewer":"https://mailtrap.io/projects/2486885/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486886,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486886/share/REDACTED","viewer":"https://mailtrap.io/projects/2486886/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486887,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486887/share/REDACTED","viewer":"https://mailtrap.io/projects/2486887/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486888,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486888/share/REDACTED","viewer":"https://mailtrap.io/projects/2486888/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486890,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486890/share/REDACTED","viewer":"https://mailtrap.io/projects/2486890/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486893,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486893/share/REDACTED","viewer":"https://mailtrap.io/projects/2486893/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486894,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486894/share/REDACTED","viewer":"https://mailtrap.io/projects/2486894/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486895,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486895/share/REDACTED","viewer":"https://mailtrap.io/projects/2486895/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486896,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486896/share/REDACTED","viewer":"https://mailtrap.io/projects/2486896/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486897,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486897/share/REDACTED","viewer":"https://mailtrap.io/projects/2486897/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486898,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486898/share/REDACTED","viewer":"https://mailtrap.io/projects/2486898/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486899,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486899/share/REDACTED","viewer":"https://mailtrap.io/projects/2486899/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486900,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486900/share/REDACTED","viewer":"https://mailtrap.io/projects/2486900/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486902,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486902/share/REDACTED","viewer":"https://mailtrap.io/projects/2486902/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486904,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486904/share/REDACTED","viewer":"https://mailtrap.io/projects/2486904/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486905,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486905/share/REDACTED","viewer":"https://mailtrap.io/projects/2486905/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486906,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486906/share/REDACTED","viewer":"https://mailtrap.io/projects/2486906/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486907,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486907/share/REDACTED","viewer":"https://mailtrap.io/projects/2486907/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486908,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486908/share/REDACTED","viewer":"https://mailtrap.io/projects/2486908/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486909,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486909/share/REDACTED","viewer":"https://mailtrap.io/projects/2486909/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486910,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486910/share/REDACTED","viewer":"https://mailtrap.io/projects/2486910/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486912,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486912/share/REDACTED","viewer":"https://mailtrap.io/projects/2486912/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486914,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486914/share/REDACTED","viewer":"https://mailtrap.io/projects/2486914/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486918,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486918/share/REDACTED","viewer":"https://mailtrap.io/projects/2486918/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486919,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486919/share/REDACTED","viewer":"https://mailtrap.io/projects/2486919/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486920,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486920/share/REDACTED","viewer":"https://mailtrap.io/projects/2486920/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486921,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486921/share/REDACTED","viewer":"https://mailtrap.io/projects/2486921/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486922,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486922/share/REDACTED","viewer":"https://mailtrap.io/projects/2486922/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486923,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486923/share/REDACTED","viewer":"https://mailtrap.io/projects/2486923/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486924,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486924/share/REDACTED","viewer":"https://mailtrap.io/projects/2486924/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486925,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486925/share/REDACTED","viewer":"https://mailtrap.io/projects/2486925/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486927,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486927/share/REDACTED","viewer":"https://mailtrap.io/projects/2486927/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486928,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486928/share/REDACTED","viewer":"https://mailtrap.io/projects/2486928/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486929,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486929/share/REDACTED","viewer":"https://mailtrap.io/projects/2486929/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486930,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486930/share/REDACTED","viewer":"https://mailtrap.io/projects/2486930/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486931,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486931/share/REDACTED","viewer":"https://mailtrap.io/projects/2486931/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486932,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486932/share/REDACTED","viewer":"https://mailtrap.io/projects/2486932/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486933,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486933/share/REDACTED","viewer":"https://mailtrap.io/projects/2486933/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486934,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486934/share/REDACTED","viewer":"https://mailtrap.io/projects/2486934/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486935,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486935/share/REDACTED","viewer":"https://mailtrap.io/projects/2486935/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486938,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486938/share/REDACTED","viewer":"https://mailtrap.io/projects/2486938/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486941,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486941/share/REDACTED","viewer":"https://mailtrap.io/projects/2486941/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486942,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486942/share/REDACTED","viewer":"https://mailtrap.io/projects/2486942/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486943,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486943/share/REDACTED","viewer":"https://mailtrap.io/projects/2486943/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486944,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486944/share/REDACTED","viewer":"https://mailtrap.io/projects/2486944/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486945,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486945/share/REDACTED","viewer":"https://mailtrap.io/projects/2486945/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486946,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486946/share/REDACTED","viewer":"https://mailtrap.io/projects/2486946/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486947,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486947/share/REDACTED","viewer":"https://mailtrap.io/projects/2486947/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486948,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486948/share/REDACTED","viewer":"https://mailtrap.io/projects/2486948/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486950,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486950/share/REDACTED","viewer":"https://mailtrap.io/projects/2486950/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486954,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486954/share/REDACTED","viewer":"https://mailtrap.io/projects/2486954/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486955,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486955/share/REDACTED","viewer":"https://mailtrap.io/projects/2486955/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486956,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486956/share/REDACTED","viewer":"https://mailtrap.io/projects/2486956/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486957,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486957/share/REDACTED","viewer":"https://mailtrap.io/projects/2486957/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486958,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486958/share/REDACTED","viewer":"https://mailtrap.io/projects/2486958/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486959,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486959/share/REDACTED","viewer":"https://mailtrap.io/projects/2486959/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486960,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486960/share/REDACTED","viewer":"https://mailtrap.io/projects/2486960/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486961,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486961/share/REDACTED","viewer":"https://mailtrap.io/projects/2486961/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486963,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486963/share/REDACTED","viewer":"https://mailtrap.io/projects/2486963/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486965,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486965/share/REDACTED","viewer":"https://mailtrap.io/projects/2486965/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486966,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486966/share/REDACTED","viewer":"https://mailtrap.io/projects/2486966/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486967,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486967/share/REDACTED","viewer":"https://mailtrap.io/projects/2486967/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486968,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486968/share/REDACTED","viewer":"https://mailtrap.io/projects/2486968/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486969,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486969/share/REDACTED","viewer":"https://mailtrap.io/projects/2486969/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486970,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486970/share/REDACTED","viewer":"https://mailtrap.io/projects/2486970/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486971,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486971/share/REDACTED","viewer":"https://mailtrap.io/projects/2486971/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486972,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486972/share/REDACTED","viewer":"https://mailtrap.io/projects/2486972/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486974,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486974/share/REDACTED","viewer":"https://mailtrap.io/projects/2486974/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486978,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486978/share/REDACTED","viewer":"https://mailtrap.io/projects/2486978/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486979,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486979/share/REDACTED","viewer":"https://mailtrap.io/projects/2486979/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486980,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486980/share/REDACTED","viewer":"https://mailtrap.io/projects/2486980/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486981,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486981/share/REDACTED","viewer":"https://mailtrap.io/projects/2486981/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486983,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486983/share/REDACTED","viewer":"https://mailtrap.io/projects/2486983/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486984,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2486984/share/REDACTED","viewer":"https://mailtrap.io/projects/2486984/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486985,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2486985/share/REDACTED","viewer":"https://mailtrap.io/projects/2486985/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486986,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486986/share/REDACTED","viewer":"https://mailtrap.io/projects/2486986/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486988,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486988/share/REDACTED","viewer":"https://mailtrap.io/projects/2486988/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486989,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486989/share/REDACTED","viewer":"https://mailtrap.io/projects/2486989/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486990,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2486990/share/REDACTED","viewer":"https://mailtrap.io/projects/2486990/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486992,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2486992/share/REDACTED","viewer":"https://mailtrap.io/projects/2486992/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486996,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486996/share/REDACTED","viewer":"https://mailtrap.io/projects/2486996/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486997,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2486997/share/REDACTED","viewer":"https://mailtrap.io/projects/2486997/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486998,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486998/share/REDACTED","viewer":"https://mailtrap.io/projects/2486998/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2486999,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2486999/share/REDACTED","viewer":"https://mailtrap.io/projects/2486999/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2487000,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2487000/share/REDACTED","viewer":"https://mailtrap.io/projects/2487000/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2487001,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2487001/share/REDACTED","viewer":"https://mailtrap.io/projects/2487001/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2487002,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2487002/share/REDACTED","viewer":"https://mailtrap.io/projects/2487002/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2487003,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2487003/share/REDACTED","viewer":"https://mailtrap.io/projects/2487003/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2487005,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2487005/share/REDACTED","viewer":"https://mailtrap.io/projects/2487005/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2487010,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2487010/share/REDACTED","viewer":"https://mailtrap.io/projects/2487010/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2487011,"name":"Test + Project","share_links":{"admin":"https://mailtrap.io/projects/2487011/share/REDACTED","viewer":"https://mailtrap.io/projects/2487011/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2487012,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2487012/share/REDACTED","viewer":"https://mailtrap.io/projects/2487012/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2487013,"name":"New + Project","share_links":{"admin":"https://mailtrap.io/projects/2487013/share/REDACTED","viewer":"https://mailtrap.io/projects/2487013/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2487014,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2487014/share/REDACTED","viewer":"https://mailtrap.io/projects/2487014/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2487015,"name":"Updated + Project","share_links":{"admin":"https://mailtrap.io/projects/2487015/share/REDACTED","viewer":"https://mailtrap.io/projects/2487015/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2487016,"name":"New + Name Only","share_links":{"admin":"https://mailtrap.io/projects/2487016/share/REDACTED","viewer":"https://mailtrap.io/projects/2487016/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2487017,"name":"Original + Project","share_links":{"admin":"https://mailtrap.io/projects/2487017/share/REDACTED","viewer":"https://mailtrap.io/projects/2487017/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}},{"id":2487019,"name":"Project + to Delete","share_links":{"admin":"https://mailtrap.io/projects/2487019/share/REDACTED","viewer":"https://mailtrap.io/projects/2487019/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}]' + recorded_at: Thu, 06 Nov 2025 17:22:45 GMT +recorded_with: VCR 6.2.0 diff --git a/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_list/when_api_key_is_incorrect/raises_authorization_error.yml b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_list/when_api_key_is_incorrect/raises_authorization_error.yml new file mode 100644 index 0000000..e158e38 --- /dev/null +++ b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_list/when_api_key_is_incorrect/raises_authorization_error.yml @@ -0,0 +1,168 @@ +--- +http_interactions: +- request: + method: get + uri: https://mailtrap.io/api/accounts/1111111/projects + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 401 + message: Unauthorized + headers: + Date: + - Thu, 06 Nov 2025 17:22:45 GMT + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '31' + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Www-Authenticate: + - Token realm="Application" + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '149' + Cache-Control: + - no-cache + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-I/u42/bdH8vv7BfJJkQAtg==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - c915c8f6-0966-401b-a5c7-7b9425e41a1c + X-Runtime: + - '0.010076' + X-Cloud-Trace-Context: + - 753aadc0a1104487c20e9ea64a70697e;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a64658cdd8028d-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"error":"Incorrect API token"}' + recorded_at: Thu, 06 Nov 2025 17:22:45 GMT +recorded_with: VCR 6.2.0 diff --git a/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_update/maps_response_data_to_Project_object.yml b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_update/maps_response_data_to_Project_object.yml new file mode 100644 index 0000000..a2a64a1 --- /dev/null +++ b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_update/maps_response_data_to_Project_object.yml @@ -0,0 +1,333 @@ +--- +http_interactions: +- request: + method: post + uri: https://mailtrap.io/api/accounts/1111111/projects + body: + encoding: UTF-8 + string: '{"project":{"name":"Original Project"}}' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 200 + message: OK + headers: + Date: + - Thu, 06 Nov 2025 17:22:48 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '141' + Etag: + - W/"d566fd0a5d4ea9273bf4996b1cd09b27" + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-ewFKuXjturow/pftL470Bw==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - 39406e58-c410-4163-acc1-f60b4fb17bf1 + X-Runtime: + - '0.044394' + X-Cloud-Trace-Context: + - 81340cc2bcdc42278670e575653ba3f8;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a6466d7c75eec5-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"id":2568508,"name":"Original Project","share_links":{"admin":"https://mailtrap.io/projects/2568508/share/REDACTED","viewer":"https://mailtrap.io/projects/2568508/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}' + recorded_at: Thu, 06 Nov 2025 17:22:48 GMT +- request: + method: patch + uri: https://mailtrap.io/api/accounts/1111111/projects/2568508 + body: + encoding: UTF-8 + string: '{"project":{"name":"Updated Project"}}' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 200 + message: OK + headers: + Date: + - Thu, 06 Nov 2025 17:22:48 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '140' + Etag: + - W/"e5d96aea05b630c9b62174918e0948ba" + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-q+LaP7j5sxknR6WcnthxMQ==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - 72f3a1d2-ae91-4130-b60d-8fcb0cc92a55 + X-Runtime: + - '0.062113' + X-Cloud-Trace-Context: + - f82a659ca1b4437cc04a10fa42f9604b;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a6466eda44b576-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"id":2568508,"name":"Updated Project","share_links":{"admin":"https://mailtrap.io/projects/2568508/share/REDACTED","viewer":"https://mailtrap.io/projects/2568508/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}' + recorded_at: Thu, 06 Nov 2025 17:22:48 GMT +recorded_with: VCR 6.2.0 diff --git a/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_update/when_project_does_not_exist/raises_not_found_error.yml b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_update/when_project_does_not_exist/raises_not_found_error.yml new file mode 100644 index 0000000..89fb845 --- /dev/null +++ b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_update/when_project_does_not_exist/raises_not_found_error.yml @@ -0,0 +1,331 @@ +--- +http_interactions: +- request: + method: post + uri: https://mailtrap.io/api/accounts/1111111/projects + body: + encoding: UTF-8 + string: '{"project":{"name":"Original Project"}}' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 200 + message: OK + headers: + Date: + - Thu, 06 Nov 2025 17:22:50 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '149' + Etag: + - W/"25e67f433975ab649f5b5a50fb4d2a91" + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-9VYfWxaSEgAIlpH2UbMRzA==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - c101b7f5-f9c3-40e6-b6f2-dfa852e8cb92 + X-Runtime: + - '0.073294' + X-Cloud-Trace-Context: + - 8878437f829f4997cdc3df94747f7233;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a64676d975eeae-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"id":2568511,"name":"Original Project","share_links":{"admin":"https://mailtrap.io/projects/2568511/share/REDACTED","viewer":"https://mailtrap.io/projects/2568511/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}' + recorded_at: Thu, 06 Nov 2025 17:22:50 GMT +- request: + method: patch + uri: https://mailtrap.io/api/accounts/1111111/projects/999999 + body: + encoding: UTF-8 + string: '{"project":{"name":"Updated Project"}}' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 404 + message: Not Found + headers: + Date: + - Thu, 06 Nov 2025 17:22:50 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '148' + Cache-Control: + - no-cache + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-VdzQgHc5OHjbJ5jI1l1mXg==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - 5586ff0c-6f38-491b-a1f6-355cad021b97 + X-Runtime: + - '0.019360' + X-Cloud-Trace-Context: + - 2f04c70fdafa4c03c89fada9ee40d79d;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a646785e8c0282-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"error":"Not Found"}' + recorded_at: Thu, 06 Nov 2025 17:22:50 GMT +recorded_with: VCR 6.2.0 diff --git a/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_update/when_updating_only_name/updates_only_the_name_field.yml b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_update/when_updating_only_name/updates_only_the_name_field.yml new file mode 100644 index 0000000..d4d6742 --- /dev/null +++ b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_update/when_updating_only_name/updates_only_the_name_field.yml @@ -0,0 +1,333 @@ +--- +http_interactions: +- request: + method: post + uri: https://mailtrap.io/api/accounts/1111111/projects + body: + encoding: UTF-8 + string: '{"project":{"name":"Original Project"}}' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 200 + message: OK + headers: + Date: + - Thu, 06 Nov 2025 17:22:49 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '137' + Etag: + - W/"c758c7713959e6c65326928713f7b199" + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-HaESDhkNKHyHHQKFVW6hvw==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - 8cae999f-7fc5-4698-a7b7-ead7edacb294 + X-Runtime: + - '0.071829' + X-Cloud-Trace-Context: + - aea66e7c3fc649ce8443d1b523e82fc0;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a64673a8d289fe-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"id":2568510,"name":"Original Project","share_links":{"admin":"https://mailtrap.io/projects/2568510/share/REDACTED","viewer":"https://mailtrap.io/projects/2568510/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}' + recorded_at: Thu, 06 Nov 2025 17:22:49 GMT +- request: + method: patch + uri: https://mailtrap.io/api/accounts/1111111/projects/2568510 + body: + encoding: UTF-8 + string: '{"project":{"name":"New Name Only"}}' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 200 + message: OK + headers: + Date: + - Thu, 06 Nov 2025 17:22:49 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '136' + Etag: + - W/"a42e6ad9e60e03bffdb73163721bf8b5" + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-ZHmfC4e26DwqzdNETsLGJg==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - 26be21c2-a381-49f1-ad6c-fdc22c611d09 + X-Runtime: + - '0.087682' + X-Cloud-Trace-Context: + - 2a29525372474282c7eb3a46ec615f45;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a646752a6015f8-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"id":2568510,"name":"New Name Only","share_links":{"admin":"https://mailtrap.io/projects/2568510/share/REDACTED","viewer":"https://mailtrap.io/projects/2568510/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}' + recorded_at: Thu, 06 Nov 2025 17:22:50 GMT +recorded_with: VCR 6.2.0 diff --git a/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_update/with_hash_request/maps_response_data_to_Project_object.yml b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_update/with_hash_request/maps_response_data_to_Project_object.yml new file mode 100644 index 0000000..a60f6fc --- /dev/null +++ b/spec/fixtures/vcr_cassettes/Mailtrap_ProjectsAPI/_update/with_hash_request/maps_response_data_to_Project_object.yml @@ -0,0 +1,333 @@ +--- +http_interactions: +- request: + method: post + uri: https://mailtrap.io/api/accounts/1111111/projects + body: + encoding: UTF-8 + string: '{"project":{"name":"Original Project"}}' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 200 + message: OK + headers: + Date: + - Thu, 06 Nov 2025 17:22:49 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '139' + Etag: + - W/"76642706d6a6767af3d369475a2c93bf" + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-SmgW+50Ja0qu+p4Pg6QILQ==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - 686a6f89-9c76-4c1b-89fc-54b1938cdb13 + X-Runtime: + - '0.105070' + X-Cloud-Trace-Context: + - 4652627853d047ed8f5ca9c363420951;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a646705c8e5779-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"id":2568509,"name":"Original Project","share_links":{"admin":"https://mailtrap.io/projects/2568509/share/REDACTED","viewer":"https://mailtrap.io/projects/2568509/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}' + recorded_at: Thu, 06 Nov 2025 17:22:49 GMT +- request: + method: patch + uri: https://mailtrap.io/api/accounts/1111111/projects/2568509 + body: + encoding: UTF-8 + string: '{"project":{"name":"Updated Project"}}' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - mailtrap-ruby (https://github.com/mailtrap/mailtrap-ruby) + Host: + - mailtrap.io + Authorization: + - Bearer + Content-Type: + - application/json + response: + status: + code: 200 + message: OK + headers: + Date: + - Thu, 06 Nov 2025 17:22:49 GMT + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Server: + - cloudflare + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Download-Options: + - noopen + X-Permitted-Cross-Domain-Policies: + - none + Referrer-Policy: + - strict-origin-when-cross-origin + Vary: + - Accept + X-Mailtrap-Version: + - v2 + X-Ratelimit-Limit: + - '150' + X-Ratelimit-Remaining: + - '138' + Etag: + - W/"c23f6ba7654468fa9adf039f42cec65c" + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - 'default-src ''self''; style-src ''self'' data: blob: ''unsafe-inline'' assets.mailtrap.io + www.googletagmanager.com fonts.googleapis.com; font-src ''self'' data: blob: + ''unsafe-inline'' assets.mailtrap.io static.hsappstatic.net fonts.gstatic.cn + fonts.gstatic.com *.s-microsoft.com use.typekit.net; script-src ''self'' data: + blob: assets.mailtrap.io *.cookiebot.com www.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com www.googleadservices.com www.google.com + beacon-v2.helpscout.net js.hs-analytics.net js.hs-banner.com js.hs-scripts.com + cdn.firstpromoter.com connect.facebook.net www.recaptcha.net www.gstatic.cn + www.gstatic.com *.quora.com static.ads-twitter.com snap.licdn.com *.growthbook.io + translate.google.com ''nonce-js-RJj+3YeyA4sTpTsvtraJOA==''; connect-src ''self'' + assets.mailtrap.io wss://mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat errors.rw.rw *.cookiebot.com *.clarity.ms + *.g.doubleclick.net *.googlesyndication.com *.googletagmanager.com www.google.com + wss://ws-helpscout.pusher.com sockjs-helpscout.pusher.com *.helpscout.net + *.firstpromoter.com connect.facebook.net *.facebook.com www.recaptcha.net + *.analytics.google.com *.google-analytics.com *.quora.com *.linkedin.com analytics.twitter.com + t.co/1/i/adsct *.growthbook.io meta-gateway.mailtrap.io translate-pa.googleapis.com; + img-src ''self'' data: blob: assets.mailtrap.io *.google.com *.google.ad *.google.ae + *.google.com.af *.google.com.ag *.google.al *.google.am *.google.co.ao *.google.com.ar + *.google.as *.google.at *.google.com.au *.google.az *.google.ba *.google.com.bd + *.google.be *.google.bf *.google.bg *.google.com.bh *.google.bi *.google.bj + *.google.com.bn *.google.com.bo *.google.com.br *.google.bs *.google.bt *.google.co.bw + *.google.by *.google.com.bz *.google.ca *.google.cd *.google.cf *.google.cg + *.google.ch *.google.ci *.google.co.ck *.google.cl *.google.cm *.google.cn + *.google.com.co *.google.co.cr *.google.com.cu *.google.cv *.google.com.cy + *.google.cz *.google.de *.google.dj *.google.dk *.google.dm *.google.com.do + *.google.dz *.google.com.ec *.google.ee *.google.com.eg *.google.es *.google.com.et + *.google.fi *.google.com.fj *.google.fm *.google.fr *.google.ga *.google.ge + *.google.gg *.google.com.gh *.google.com.gi *.google.gl *.google.gm *.google.gr + *.google.com.gt *.google.gy *.google.com.hk *.google.hn *.google.hr *.google.ht + *.google.hu *.google.co.id *.google.ie *.google.co.il *.google.im *.google.co.in + *.google.iq *.google.is *.google.it *.google.je *.google.com.jm *.google.jo + *.google.co.jp *.google.co.ke *.google.com.kh *.google.ki *.google.kg *.google.co.kr + *.google.com.kw *.google.kz *.google.la *.google.com.lb *.google.li *.google.lk + *.google.co.ls *.google.lt *.google.lu *.google.lv *.google.com.ly *.google.co.ma + *.google.md *.google.me *.google.mg *.google.mk *.google.ml *.google.com.mm + *.google.mn *.google.com.mt *.google.mu *.google.mv *.google.mw *.google.com.mx + *.google.com.my *.google.co.mz *.google.com.na *.google.com.ng *.google.com.ni + *.google.ne *.google.nl *.google.no *.google.com.np *.google.nr *.google.nu + *.google.co.nz *.google.com.om *.google.com.pa *.google.com.pe *.google.com.pg + *.google.com.ph *.google.com.pk *.google.pl *.google.pn *.google.com.pr *.google.ps + *.google.pt *.google.com.py *.google.com.qa *.google.ro *.google.ru *.google.rw + *.google.com.sa *.google.com.sb *.google.sc *.google.se *.google.com.sg *.google.sh + *.google.si *.google.sk *.google.com.sl *.google.sn *.google.so *.google.sm + *.google.sr *.google.st *.google.com.sv *.google.td *.google.tg *.google.co.th + *.google.com.tj *.google.tl *.google.tm *.google.tn *.google.to *.google.com.tr + *.google.tt *.google.com.tw *.google.co.tz *.google.com.ua *.google.co.ug + *.google.co.uk *.google.com.uy *.google.co.uz *.google.com.vc *.google.co.ve + *.google.co.vi *.google.com.vn *.google.vu *.google.ws *.google.rs *.google.co.za + *.google.co.zm *.google.co.zw *.google.cat *.cookiebot.com *.clarity.ms *.doubleclick.net + *.googlesyndication.com *.googletagmanager.com *.google.com track.hubspot.com + *.facebook.com *.facebook.net *.analytics.google.com *.google-analytics.com + *.quora.com *.linkedin.com analytics.twitter.com t.co/1/i/adsct secure.gravatar.com; + frame-src ''self'' consentcdn.cookiebot.com td.doubleclick.net www.googletagmanager.com + www.facebook.com www.recaptcha.net translate.googleapis.com; frame-ancestors + ''self''; media-src ''self'' data: blob: beacon-v2.helpscout.net ssl.gstatic.com; + object-src ''self'' beacon-v2.helpscout.net; report-uri https://errors.rw.rw/api/37/security/?sentry_key=5a0cc8a2cb4f49a8b9043c602e4ec0ab' + X-Request-Id: + - 6341454c-7091-4a97-a74d-94d931e50645 + X-Runtime: + - '0.072047' + X-Cloud-Trace-Context: + - e232a4dfcd1e404ec34b5d6123563891;o=0 + Strict-Transport-Security: + - max-age=0 + Cf-Cache-Status: + - DYNAMIC + Cf-Ray: + - 99a646721c9deeb2-WAW + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: UTF-8 + string: '{"id":2568509,"name":"Updated Project","share_links":{"admin":"https://mailtrap.io/projects/2568509/share/REDACTED","viewer":"https://mailtrap.io/projects/2568509/share/REDACTED"},"inboxes":[],"permissions":{"can_read":true,"can_update":true,"can_destroy":true,"can_leave":false}}' + recorded_at: Thu, 06 Nov 2025 17:22:49 GMT +recorded_with: VCR 6.2.0 \ No newline at end of file diff --git a/spec/mailtrap/project_spec.rb b/spec/mailtrap/project_spec.rb new file mode 100644 index 0000000..2c18476 --- /dev/null +++ b/spec/mailtrap/project_spec.rb @@ -0,0 +1,139 @@ +# frozen_string_literal: true + +RSpec.describe Mailtrap::Project do + describe '#initialize' do + subject(:project) { described_class.new(attributes) } + + let(:attributes) do + { + id: '123456', + name: 'My Project', + share_links: [ + { + id: 'abc123', + name: 'Share Link 1', + url: 'https://example.com/share/1' + } + ], + inboxes: [ + { + id: 456, + name: 'Test Inbox', + username: 'test@inbox.mailtrap.io' + } + ], + permissions: { + can_read: true, + can_update: true, + can_destroy: false, + can_leave: true + } + } + end + + it 'creates a project with all attributes' do + expect(project).to have_attributes( + id: '123456', + name: 'My Project', + share_links: [ + { + id: 'abc123', + name: 'Share Link 1', + url: 'https://example.com/share/1' + } + ], + permissions: { + can_read: true, + can_update: true, + can_destroy: false, + can_leave: true + } + ) + + expect(project.inboxes.map(&:to_h)).to eq([ + { + id: 456, + name: 'Test Inbox', + username: 'test@inbox.mailtrap.io' + } + ]) + end + end + + describe '#to_h' do + subject(:hash) { project.to_h } + + let(:project) do + described_class.new( + id: '123456', + name: 'My Project', + share_links: [ + { + id: 'abc123', + name: 'Share Link 1', + url: 'https://example.com/share/1' + } + ], + inboxes: [ + { + id: 456, + name: 'Test Inbox', + username: 'test@inbox.mailtrap.io' + } + ], + permissions: { + can_read: true, + can_update: true, + can_destroy: false, + can_leave: true + } + ) + end + + it 'returns a hash with all attributes' do + expect(hash).to eq( + id: '123456', + name: 'My Project', + share_links: [ + { + id: 'abc123', + name: 'Share Link 1', + url: 'https://example.com/share/1' + } + ], + inboxes: [ + { + id: 456, + name: 'Test Inbox', + username: 'test@inbox.mailtrap.io' + } + ], + permissions: { + can_read: true, + can_update: true, + can_destroy: false, + can_leave: true + } + ) + end + + context 'when some attributes are nil' do + let(:project) do + described_class.new( + id: '123456', + name: 'My Project', + share_links: nil, + inboxes: nil, + permissions: nil + ) + end + + it 'returns a hash with only non-nil attributes' do + expect(hash).to eq( + id: '123456', + name: 'My Project' + ) + end + end + end +end diff --git a/spec/mailtrap/projects_api_spec.rb b/spec/mailtrap/projects_api_spec.rb new file mode 100644 index 0000000..6ada097 --- /dev/null +++ b/spec/mailtrap/projects_api_spec.rb @@ -0,0 +1,194 @@ +# frozen_string_literal: true + +RSpec.describe Mailtrap::ProjectsAPI, :vcr do + subject(:project_api) { described_class.new(account_id, client) } + + let(:account_id) { ENV.fetch('MAILTRAP_ACCOUNT_ID', 1_111_111) } + let(:client) { Mailtrap::Client.new(api_key: ENV.fetch('MAILTRAP_API_KEY', 'local-api-key')) } + + describe '#list' do + subject(:list) { project_api.list } + + it 'maps response data to Project objects' do + expect(list).to all(be_a(Mailtrap::Project)) + end + + context 'when api key is incorrect' do + let(:client) { Mailtrap::Client.new(api_key: 'incorrect-api-key') } + + it 'raises authorization error' do + expect { list }.to raise_error do |error| + expect(error).to be_a(Mailtrap::AuthorizationError) + expect(error.message).to include('Incorrect API token') + expect(error.messages.any? { |msg| msg.include?('Incorrect API token') }).to be true + end + end + end + end + + describe '#get' do + subject(:get) { project_api.get(project_id) } + + let!(:created_project) do + project_api.create( + name: 'Test Project' + ) + end + let(:project_id) { created_project.id } + + it 'maps response data to Project object' do + expect(get).to be_a(Mailtrap::Project) + expect(get).to have_attributes( + id: project_id, + name: 'Test Project' + ) + end + + context 'when project does not exist' do + let(:project_id) { 999_999 } + + it 'raises not found error' do + expect { get }.to raise_error do |error| + expect(error).to be_a(Mailtrap::Error) + expect(error.message).to include('Not Found') + expect(error.messages.any? { |msg| msg.include?('Not Found') }).to be true + end + end + end + end + + describe '#create' do + subject(:create) { project_api.create(**request) } + + let(:request) do + { + name: 'New Project' + } + end + + it 'maps response data to Project object' do + expect(create).to be_a(Mailtrap::Project) + expect(create).to have_attributes( + name: 'New Project' + ) + end + + context 'with hash request' do + let(:request) do + { + name: 'New Project' + } + end + + it 'maps response data to Project object' do + expect(create).to be_a(Mailtrap::Project) + expect(create).to have_attributes( + name: 'New Project' + ) + end + end + + context 'when API returns an error' do + let(:request) do + { + name: '' # Invalid value, but present + } + end + + it 'raises a Mailtrap::Error' do + expect { create }.to raise_error do |error| + expect(error).to be_a(Mailtrap::Error) + expect(error.message).to include('client error') + end + end + end + end + + describe '#update' do + subject(:update) { project_api.update(project_id, **request) } + + let!(:created_project) do + project_api.create( + name: 'Original Project' + ) + end + let(:project_id) { created_project.id } + let(:request) do + { + name: 'Updated Project' + } + end + + it 'maps response data to Project object' do + expect(update).to be_a(Mailtrap::Project) + expect(update).to have_attributes( + name: 'Updated Project' + ) + end + + context 'with hash request' do + let(:request) do + { + name: 'Updated Project' + } + end + + it 'maps response data to Project object' do + expect(update).to be_a(Mailtrap::Project) + expect(update).to have_attributes( + name: 'Updated Project' + ) + end + end + + context 'when updating only name' do + let(:request) { { name: 'New Name Only' } } + + it 'updates only the name field' do + expect(update).to be_a(Mailtrap::Project) + expect(update).to have_attributes( + name: 'New Name Only' + ) + end + end + + context 'when project does not exist' do + let(:project_id) { 999_999 } + + it 'raises not found error' do + expect { update }.to raise_error do |error| + expect(error).to be_a(Mailtrap::Error) + expect(error.message).to include('Not Found') + expect(error.messages.any? { |msg| msg.include?('Not Found') }).to be true + end + end + end + end + + describe '#delete' do + subject(:delete) { project_api.delete(project_id) } + + let!(:created_project) do + project_api.create( + name: 'Project to Delete' + ) + end + let(:project_id) { created_project.id } + + it 'returns deleted project id' do + expect(delete).to eq({ id: project_id }) + end + + context 'when project does not exist' do + let(:project_id) { 999_999 } + + it 'raises not found error' do + expect { delete }.to raise_error do |error| + expect(error).to be_a(Mailtrap::Error) + expect(error.message).to include('Not Found') + expect(error.messages.any? { |msg| msg.include?('Not Found') }).to be true + end + end + end + end +end