SQL Server Stripe: Retrieve an Event

Back to Index

Retrieves the details of an event. Supply the unique identifier of the event, which you might have received in a webhook.

Documentation: https://stripe.com/docs/api/curl#retrieve_event

CURL Command

curl https://api.stripe.com/v1/events/evt_1BnETJGswQrCoh0XAl7jSmFB \
   -u STRIPE_SECRET_KEY:

SQL Server Example

CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    DECLARE @iTmp0 int
    DECLARE @sTmp0 nvarchar(4000)
    DECLARE @rest int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.Rest', @rest OUT
    IF @hr <> 0
    BEGIN
        PRINT 'Failed to create ActiveX component'
        RETURN
    END

    DECLARE @success int

    --  URL: https://api.stripe.com/v1/events/evt_1BnETJGswQrCoh0XAl7jSmFB
    DECLARE @bTls int
    SELECT @bTls = 1
    DECLARE @port int
    SELECT @port = 443
    DECLARE @bAutoReconnect int
    SELECT @bAutoReconnect = 1
    EXEC sp_OAMethod @rest, 'Connect', @success OUT, 'api.stripe.com', STR(@port), STR(@bTls), STR(@bAutoReconnect)
    IF STR(@success) <> 1
      BEGIN

        EXEC sp_OAGetProperty @rest, 'ConnectFailReason', @iTmp0 OUT
        PRINT 'ConnectFailReason: ' + @iTmp0
        EXEC sp_OAGetProperty @rest, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        EXEC @hr = sp_OADestroy @rest
        RETURN
      END

    EXEC sp_OAMethod @rest, 'SetAuthBasic', @success OUT, 'STRIPE_SECRET_KEY', ''

    DECLARE @sbResponseBody int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.StringBuilder', @sbResponseBody OUT

    EXEC sp_OAMethod @rest, 'FullRequestNoBodySb', @success OUT, 'GET', '/v1/events/evt_1BnETJGswQrCoh0XAl7jSmFB', STR(@sbResponseBody)
    IF STR(@success) <> 1
      BEGIN
        EXEC sp_OAGetProperty @rest, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        EXEC @hr = sp_OADestroy @rest
        EXEC @hr = sp_OADestroy @sbResponseBody
        RETURN
      END

    DECLARE @jsonResponse int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.JsonObject', @jsonResponse OUT

    EXEC sp_OAMethod @jsonResponse, 'LoadSb', @success OUT, STR(@sbResponseBody)

    DECLARE @id nvarchar(4000)

    DECLARE @object nvarchar(4000)

    DECLARE @api_version int

    DECLARE @created int

    DECLARE @dataObjectId nvarchar(4000)

    DECLARE @dataObjectObject nvarchar(4000)

    DECLARE @dataObjectAmount int

    DECLARE @dataObjectCreated int

    DECLARE @dataObjectCurrency nvarchar(4000)

    DECLARE @dataObjectInterval nvarchar(4000)

    DECLARE @dataObjectInterval_count int

    DECLARE @dataObjectLivemode int

    DECLARE @dataObjectName nvarchar(4000)

    DECLARE @dataObjectStatement_descriptor int

    DECLARE @dataObjectTrial_period_days int

    DECLARE @livemode int

    DECLARE @pending_webhooks int

    DECLARE @requestId int

    DECLARE @requestIdempotency_key int

    DECLARE @type nvarchar(4000)

    EXEC sp_OAMethod @jsonResponse, 'StringOf', @id OUT, 'id'
    EXEC sp_OAMethod @jsonResponse, 'StringOf', @object OUT, 'object'
    EXEC sp_OAMethod @jsonResponse, 'IsNullOf', @api_version OUT, 'api_version'
    EXEC sp_OAMethod @jsonResponse, 'IntOf', @created OUT, 'created'
    EXEC sp_OAMethod @jsonResponse, 'StringOf', @dataObjectId OUT, 'data.object.id'
    EXEC sp_OAMethod @jsonResponse, 'StringOf', @dataObjectObject OUT, 'data.object.object'
    EXEC sp_OAMethod @jsonResponse, 'IntOf', @dataObjectAmount OUT, 'data.object.amount'
    EXEC sp_OAMethod @jsonResponse, 'IntOf', @dataObjectCreated OUT, 'data.object.created'
    EXEC sp_OAMethod @jsonResponse, 'StringOf', @dataObjectCurrency OUT, 'data.object.currency'
    EXEC sp_OAMethod @jsonResponse, 'StringOf', @dataObjectInterval OUT, 'data.object.interval'
    EXEC sp_OAMethod @jsonResponse, 'IntOf', @dataObjectInterval_count OUT, 'data.object.interval_count'
    EXEC sp_OAMethod @jsonResponse, 'BoolOf', @dataObjectLivemode OUT, 'data.object.livemode'
    EXEC sp_OAMethod @jsonResponse, 'StringOf', @dataObjectName OUT, 'data.object.name'
    EXEC sp_OAMethod @jsonResponse, 'IsNullOf', @dataObjectStatement_descriptor OUT, 'data.object.statement_descriptor'
    EXEC sp_OAMethod @jsonResponse, 'IsNullOf', @dataObjectTrial_period_days OUT, 'data.object.trial_period_days'
    EXEC sp_OAMethod @jsonResponse, 'BoolOf', @livemode OUT, 'livemode'
    EXEC sp_OAMethod @jsonResponse, 'IntOf', @pending_webhooks OUT, 'pending_webhooks'
    EXEC sp_OAMethod @jsonResponse, 'IsNullOf', @requestId OUT, 'request.id'
    EXEC sp_OAMethod @jsonResponse, 'IsNullOf', @requestIdempotency_key OUT, 'request.idempotency_key'
    EXEC sp_OAMethod @jsonResponse, 'StringOf', @type OUT, 'type'

    EXEC @hr = sp_OADestroy @rest
    EXEC @hr = sp_OADestroy @sbResponseBody
    EXEC @hr = sp_OADestroy @jsonResponse


END
GO

Sample JSON Response Body

{
  "id": "evt_1BnETJGswQrCoh0XAl7jSmFB",
  "object": "event",
  "api_version": null,
  "created": 1516662781,
  "data": {
    "object": {
      "id": "gold",
      "object": "plan",
      "amount": 2000,
      "created": 1516662781,
      "currency": "usd",
      "interval": "month",
      "interval_count": 1,
      "livemode": false,
      "metadata": {},
      "name": "T-shirt",
      "statement_descriptor": null,
      "trial_period_days": null
    }
  },
  "livemode": false,
  "pending_webhooks": 0,
  "request": {
    "id": null,
    "idempotency_key": null
  },
  "type": "plan.created"
}