مراية لـ
https://github.com/postalserver/postal.git
تم المزامنة 2025-12-01 05:43:04 +00:00
41 أسطر
1.5 KiB
Ruby
41 أسطر
1.5 KiB
Ruby
controller :messages do
|
|
friendly_name "Messages API"
|
|
description "This API allows you to access message details"
|
|
authenticator :server
|
|
|
|
action :message do
|
|
title "Return message details"
|
|
description "Returns all details about a message"
|
|
param :id, "The ID of the message", :type => Integer, :required => true
|
|
returns Hash, :structure => :message, :structure_opts => {:paramable => {:expansions => false}}
|
|
error 'MessageNotFound', "No message found matching provided ID", :attributes => {:id => "The ID of the message"}
|
|
action do
|
|
begin
|
|
message = identity.server.message(params.id)
|
|
rescue Postal::MessageDB::Message::NotFound => e
|
|
error 'MessageNotFound', :id => params.id
|
|
end
|
|
structure :message, message, :return => true
|
|
end
|
|
end
|
|
|
|
action :deliveries do
|
|
title "Return deliveries for a message"
|
|
description "Returns an array of deliveries which have been attempted for this message"
|
|
param :id, "The ID of the message", :type => Integer, :required => true
|
|
returns Array, :structure => :delivery, :structure_opts => {:full => true}
|
|
error 'MessageNotFound', "No message found matching provided ID", :attributes => {:id => "The ID of the message"}
|
|
action do
|
|
begin
|
|
message = identity.server.message(params.id)
|
|
rescue Postal::MessageDB::Message::NotFound => e
|
|
error 'MessageNotFound', :id => params.id
|
|
end
|
|
message.deliveries.map do |d|
|
|
structure :delivery, d
|
|
end
|
|
end
|
|
end
|
|
|
|
end
|