Email

AdminUpdated Sep 24, 2026
GEThttps://shippified.net/api/email-sources
List email sources.
Parameters
NameInTypeRequiredDescription
limitqueryintegerno
offsetqueryintegerno
Responses
200 OK
Code samples
cURL
curl -X GET "https://shippified.net/api/email-sources?limit=&offset="
TypeScript
const res = await fetch('https://shippified.net/api/email-sources?limit=&offset=', {
  method: 'GET',
});
const data = await res.json();
Python
import requests

res = requests.request(
    "GET",
    "https://shippified.net/api/email-sources?limit=&offset=",
)
data = res.json()
Go
package main

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

func main() {
	req, _ := http.NewRequest("GET", "https://shippified.net/api/email-sources?limit=&offset=", nil)
	res, _ := http.DefaultClient.Do(req)
	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)
	fmt.Println(string(body))
}
PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://shippified.net/api/email-sources?limit=&offset=');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
Ruby
require 'net/http'
require 'uri'

uri = URI('https://shippified.net/api/email-sources?limit=&offset=')
req = Net::HTTP::Get.new(uri)
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
  http.request(req)
end
puts res.body
Java
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;

HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://shippified.net/api/email-sources?limit=&offset="))
    .GET()
    .build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
POSThttps://shippified.net/api/email-sources
Create an email source.
Request body application/json
{
  "id": "string",
  "userId": "string",
  "provider": "imap",
  "label": "string",
  "address": "string",
  "status": "connected",
  "templateIds": [
    "string"
  ],
  "allowedSenders": [
    "string"
  ],
  "lastPolledAt": "2024-01-01T00:00:00Z",
  "lastError": "string"
}
Responses
201 Created.
{
  "id": "string",
  "userId": "string",
  "provider": "imap",
  "label": "string",
  "address": "string",
  "status": "connected",
  "templateIds": [
    "string"
  ],
  "allowedSenders": [
    "string"
  ],
  "lastPolledAt": "2024-01-01T00:00:00Z",
  "lastError": "string"
}
Code samples
cURL
curl -X POST "https://shippified.net/api/email-sources" \
  -H "Content-Type: application/json" \
  -d '{"id":"string","userId":"string","provider":"imap","label":"string","address":"string","status":"connected","templateIds":["string"],"allowedSenders":["string"],"lastPolledAt":"2024-01-01T00:00:00Z","lastError":"string"}'
TypeScript
const res = await fetch('https://shippified.net/api/email-sources', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({"id":"string","userId":"string","provider":"imap","label":"string","address":"string","status":"connected","templateIds":["string"],"allowedSenders":["string"],"lastPolledAt":"2024-01-01T00:00:00Z","lastError":"string"}),
});
const data = await res.json();
Python
import requests

res = requests.request(
    "POST",
    "https://shippified.net/api/email-sources",
    headers={
    "Content-Type": "application/json",
    },
    json={"id": "string", "userId": "string", "provider": "imap", "label": "string", "address": "string", "status": "connected", "templateIds": ["string"], "allowedSenders": ["string"], "lastPolledAt": "2024-01-01T00:00:00Z", "lastError": "string"},
)
data = res.json()
Go
package main

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

func main() {
	req, _ := http.NewRequest("POST", "https://shippified.net/api/email-sources", strings.NewReader(`{"id":"string","userId":"string","provider":"imap","label":"string","address":"string","status":"connected","templateIds":["string"],"allowedSenders":["string"],"lastPolledAt":"2024-01-01T00:00:00Z","lastError":"string"}`))
	req.Header.Set("Content-Type", "application/json")
	res, _ := http.DefaultClient.Do(req)
	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)
	fmt.Println(string(body))
}
PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://shippified.net/api/email-sources');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{"id":"string","userId":"string","provider":"imap","label":"string","address":"string","status":"connected","templateIds":["string"],"allowedSenders":["string"],"lastPolledAt":"2024-01-01T00:00:00Z","lastError":"string"}');
$response = curl_exec($ch);
curl_close($ch);
echo $response;
Ruby
require 'net/http'
require 'uri'

uri = URI('https://shippified.net/api/email-sources')
req = Net::HTTP::Post.new(uri)
req['Content-Type'] = 'application/json'
req.body = '{"id":"string","userId":"string","provider":"imap","label":"string","address":"string","status":"connected","templateIds":["string"],"allowedSenders":["string"],"lastPolledAt":"2024-01-01T00:00:00Z","lastError":"string"}'
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
  http.request(req)
end
puts res.body
Java
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;

HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://shippified.net/api/email-sources"))
    .header("Content-Type", "application/json")
    .method("POST", BodyPublishers.ofString("{\"id\":\"string\",\"userId\":\"string\",\"provider\":\"imap\",\"label\":\"string\",\"address\":\"string\",\"status\":\"connected\",\"templateIds\":[\"string\"],\"allowedSenders\":[\"string\"],\"lastPolledAt\":\"2024-01-01T00:00:00Z\",\"lastError\":\"string\"}"))
    .build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
GEThttps://shippified.net/api/email-sources/{id}
Get one email source.
Parameters
NameInTypeRequiredDescription
idpathstringyes
Responses
200 OK
404 Not found.
Code samples
cURL
curl -X GET "https://shippified.net/api/email-sources/{id}"
TypeScript
const res = await fetch('https://shippified.net/api/email-sources/{id}', {
  method: 'GET',
});
const data = await res.json();
Python
import requests

res = requests.request(
    "GET",
    "https://shippified.net/api/email-sources/{id}",
)
data = res.json()
Go
package main

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

func main() {
	req, _ := http.NewRequest("GET", "https://shippified.net/api/email-sources/{id}", nil)
	res, _ := http.DefaultClient.Do(req)
	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)
	fmt.Println(string(body))
}
PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://shippified.net/api/email-sources/{id}');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
Ruby
require 'net/http'
require 'uri'

uri = URI('https://shippified.net/api/email-sources/{id}')
req = Net::HTTP::Get.new(uri)
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
  http.request(req)
end
puts res.body
Java
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;

HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://shippified.net/api/email-sources/{id}"))
    .GET()
    .build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
DELETEhttps://shippified.net/api/email-sources/{id}
Delete email source.
Parameters
NameInTypeRequiredDescription
idpathstringyes
Responses
200 Deleted.
Code samples
cURL
curl -X DELETE "https://shippified.net/api/email-sources/{id}"
TypeScript
const res = await fetch('https://shippified.net/api/email-sources/{id}', {
  method: 'DELETE',
});
const data = await res.json();
Python
import requests

res = requests.request(
    "DELETE",
    "https://shippified.net/api/email-sources/{id}",
)
data = res.json()
Go
package main

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

func main() {
	req, _ := http.NewRequest("DELETE", "https://shippified.net/api/email-sources/{id}", nil)
	res, _ := http.DefaultClient.Do(req)
	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)
	fmt.Println(string(body))
}
PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://shippified.net/api/email-sources/{id}');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'DELETE');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
Ruby
require 'net/http'
require 'uri'

uri = URI('https://shippified.net/api/email-sources/{id}')
req = Net::HTTP::Delete.new(uri)
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
  http.request(req)
end
puts res.body
Java
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;

HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://shippified.net/api/email-sources/{id}"))
    .method("DELETE", BodyPublishers.noBody())
    .build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
PATCHhttps://shippified.net/api/email-sources/{id}
Update email source.
Parameters
NameInTypeRequiredDescription
idpathstringyes
Responses
200 Updated.
404 Not found.
Code samples
cURL
curl -X PATCH "https://shippified.net/api/email-sources/{id}"
TypeScript
const res = await fetch('https://shippified.net/api/email-sources/{id}', {
  method: 'PATCH',
});
const data = await res.json();
Python
import requests

res = requests.request(
    "PATCH",
    "https://shippified.net/api/email-sources/{id}",
)
data = res.json()
Go
package main

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

func main() {
	req, _ := http.NewRequest("PATCH", "https://shippified.net/api/email-sources/{id}", nil)
	res, _ := http.DefaultClient.Do(req)
	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)
	fmt.Println(string(body))
}
PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://shippified.net/api/email-sources/{id}');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PATCH');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
Ruby
require 'net/http'
require 'uri'

uri = URI('https://shippified.net/api/email-sources/{id}')
req = Net::HTTP::Patch.new(uri)
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
  http.request(req)
end
puts res.body
Java
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;

HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://shippified.net/api/email-sources/{id}"))
    .method("PATCH", BodyPublishers.noBody())
    .build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
POSThttps://shippified.net/api/email-sources/{id}/poll
Trigger an on-demand poll of the source.
Parameters
NameInTypeRequiredDescription
idpathstringyes
Responses
200 Poll result + refreshed source state.
Code samples
cURL
curl -X POST "https://shippified.net/api/email-sources/{id}/poll"
TypeScript
const res = await fetch('https://shippified.net/api/email-sources/{id}/poll', {
  method: 'POST',
});
const data = await res.json();
Python
import requests

res = requests.request(
    "POST",
    "https://shippified.net/api/email-sources/{id}/poll",
)
data = res.json()
Go
package main

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

func main() {
	req, _ := http.NewRequest("POST", "https://shippified.net/api/email-sources/{id}/poll", nil)
	res, _ := http.DefaultClient.Do(req)
	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)
	fmt.Println(string(body))
}
PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://shippified.net/api/email-sources/{id}/poll');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
Ruby
require 'net/http'
require 'uri'

uri = URI('https://shippified.net/api/email-sources/{id}/poll')
req = Net::HTTP::Post.new(uri)
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
  http.request(req)
end
puts res.body
Java
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;

HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://shippified.net/api/email-sources/{id}/poll"))
    .method("POST", BodyPublishers.noBody())
    .build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
POSThttps://shippified.net/api/email-sources/{id}/rebuild
Re-read the mailbox from `sinceDays` ago (1–365) through the current parser, replacing the orders this source produced in that window. Runs in the background; progress is reported on the source as `rebuilding` / `lastRebuild`.
Parameters
NameInTypeRequiredDescription
idpathstringyes
Responses
202 Started.
409 Already running.
Code samples
cURL
curl -X POST "https://shippified.net/api/email-sources/{id}/rebuild"
TypeScript
const res = await fetch('https://shippified.net/api/email-sources/{id}/rebuild', {
  method: 'POST',
});
const data = await res.json();
Python
import requests

res = requests.request(
    "POST",
    "https://shippified.net/api/email-sources/{id}/rebuild",
)
data = res.json()
Go
package main

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

func main() {
	req, _ := http.NewRequest("POST", "https://shippified.net/api/email-sources/{id}/rebuild", nil)
	res, _ := http.DefaultClient.Do(req)
	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)
	fmt.Println(string(body))
}
PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://shippified.net/api/email-sources/{id}/rebuild');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
Ruby
require 'net/http'
require 'uri'

uri = URI('https://shippified.net/api/email-sources/{id}/rebuild')
req = Net::HTTP::Post.new(uri)
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
  http.request(req)
end
puts res.body
Java
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;

HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://shippified.net/api/email-sources/{id}/rebuild"))
    .method("POST", BodyPublishers.noBody())
    .build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
POSThttps://shippified.net/api/email/import
Manually import a raw email body.
Responses
202 Parsed + ingested.
Code samples
cURL
curl -X POST "https://shippified.net/api/email/import"
TypeScript
const res = await fetch('https://shippified.net/api/email/import', {
  method: 'POST',
});
const data = await res.json();
Python
import requests

res = requests.request(
    "POST",
    "https://shippified.net/api/email/import",
)
data = res.json()
Go
package main

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

func main() {
	req, _ := http.NewRequest("POST", "https://shippified.net/api/email/import", nil)
	res, _ := http.DefaultClient.Do(req)
	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)
	fmt.Println(string(body))
}
PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://shippified.net/api/email/import');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
Ruby
require 'net/http'
require 'uri'

uri = URI('https://shippified.net/api/email/import')
req = Net::HTTP::Post.new(uri)
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
  http.request(req)
end
puts res.body
Java
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;

HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://shippified.net/api/email/import"))
    .method("POST", BodyPublishers.noBody())
    .build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
Was this page helpful?