Skip to content

Your API key

Create one in the portal under API keys.

Browse the API

API reference

Signature delivery

Look up the signature for an email address, or stamp it into an outgoing message.

2 endpoints

GET/api/v1/signature

Resolve a signature

Works out which template applies to an email address and returns the rendered HTML and plain text, banners and disclaimer included. This is the API equivalent of the add-in lookup.

signature:read

Parameters

Query string

  • emailRequired

    stringThe email address to resolve for.

    email

    example: "alex.morgan@acme.com"

  • composeOptional

    one ofWhether the email is new, a reply or a forward, for rules and blocks that differ.

    one of: new, reply, forward · default "new"

  • recipientsOptional

    one ofWhether everyone on the email is inside the organisation. Unknown counts as external.

    one of: external, internal

Example response

json
{
  "html": "<table><tr><td><strong>Alex Morgan</strong><br>Head of Operations</td></tr></table>",
  "text": "Alex Morgan\nHead of Operations",
  "template_id": "b8e0f1a2-3c4d-4e5f-8a9b-0c1d2e3f4a5b",
  "template_version": 5,
  "user_id": "7c3f2b1a-0d4e-4f5a-8b9c-1d2e3f4a5b6c"
}

Copy and paste

curl -X GET "https://api.usesigned.co.uk/api/v1/signature" \
  -H "X-API-Key: $SIGNED_API_KEY"

Worth knowing

Returns 404 when no signature applies, for example when the person is not in the directory. Each lookup counts towards your monthly usage.

POST/api/v1/signature/stamp

Stamp a message

Appends the sender’s signature to an HTML and text body. Designed for a mail flow rule or an outbound relay: send the body, get it back with the signature added.

signature:stamp

Parameters

JSON body

  • sender_emailRequired

    stringThe address the message is from. The signature is resolved for this person.

    email

    example: "alex.morgan@acme.com"

  • html_bodyRequired

    stringThe HTML body. The signature is inserted before the closing body tag when there is one.

  • text_bodyOptional

    stringThe plain text body. The signature is appended after a standard separator.

  • composeOptional

    one ofWhether the message is new, a reply or a forward.

    one of: new, reply, forward · default "new"

  • recipientsOptional

    listRecipient addresses. Only used to tell internal from external emails, and never stored.

Example request body

json
{
  "sender_email": "alex.morgan@acme.com",
  "html_body": "<html><body><p>Thanks for your email.</p></body></html>",
  "text_body": "Thanks for your email."
}

Example response

json
{
  "modified": true,
  "html_body": "<html><body><p>Thanks for your email.</p><!-- signed-stamped -->\n<table>...</table></body></html>",
  "text_body": "Thanks for your email.\n\n-- \nAlex Morgan\nHead of Operations",
  "signature_meta": {
    "template_id": "b8e0f1a2-3c4d-4e5f-8a9b-0c1d2e3f4a5b",
    "template_version": 5
  }
}

Copy and paste

curl -X POST "https://api.usesigned.co.uk/api/v1/signature/stamp" \
  -H "X-API-Key: $SIGNED_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"sender_email": "alex.morgan@acme.com","html_body": "<html><body><p>Thanks for your email.</p></body></html>","text_body": "Thanks for your email."}'

Worth knowing

Stamping is idempotent. A body that already carries the <!-- signed-stamped --> marker is returned unchanged, so a message cannot be signed twice.