Perfect Venue REST API Documentation

Perfect Venue REST API Documentation

Endpoint: /oauth/authorize

Description: Perfect Venue API authentication endpoint via oauth 2.0.

Request

Method: GET

URL: https://api.perfectvenue.com/oauth/authorize

URL Params

      
        {
            # Client ID for this application
            "client_id": "client123",

            "state": "state123.3345", # Optional

            # Redirect URL for this application
            "redirect_url": "https://www.redirect.com",

            # We only support code responses for now
            "response_type": "code",

            # Space separated list of scopes
            "scope": "read"
        }
      
    

Request Headers:

No request headers required for this endpoint.

Request Body:

No request body required for this endpoint.

Response

Response Body (JSON):

No response body for this endpoint. On a successful call, will redirect to authorization page, sending code and state (if supplied).

Endpoint: /oauth/token

Description: Generates authorization token using oauth2.0 spec.

Request

Method: POST

URL: https://api.perfectvenue.com/oauth/token

Request Headers:

No request headers required for this endpoint.

Request Body:

      
        {
          # Code response from authorization endpoint
          "code": "code1234"
          "client_id": "client123",
          "client_secret": "secret123",
          "grant_type": "authorization_grant | refresh_token",
          "redirect_uri": "https://redirect.com",
          # Optional, wen supplied with grant type refresh_token, will refresh current token
          "refresh_token": "refreshtoken123",
        }
      
    

Response

Response Body (JSON):

      
        {
            "access_token": "sQbLGV9_YQD7c5Nms24VCvDbnWTjwRdpAyjFQ44SgO8",
            "token_type": "Bearer",
            "expires_in": 7200,
            "refresh_token": "rPf-KEuZxYAKhFoZiUIBIsa-jyGnjdpCh9SobYn0Tz4",
            "scope": "public",
            "created_at": 1706911338
        }
      
    

Endpoint: /api/v1/me

Description: Test endpoint for token authentication

Request

Method: GET

URL: https://api.perfectvenue.com/api/v1/me

Request Headers:

      
        {
          "Authorization": "Bearer {token}",
        }
      
    

Request Body:

No request body is required for this endpoint.

Response

Response Body (JSON):

      
        {
          "id": 10073,
          "email": "email@perfectvenue.com",
          "created_at": "2024-02-02T01:10:52.025Z",
          "updated_at": "2024-02-07T19:23:15.534Z",
          "first_name": "Miguel",
          "last_name": "de Dios",
          "phone": "",
          "public_id": "user_NZyzNU-yUpbguQ"
        }
      
    

Endpoint: /api/v1/fast

Description: Fast test endpoint for token authentication

Request

Method: GET

URL: https://api.perfectvenue.com/api/v1/fast

Request Headers:

      
        {
          "Authorization": "Bearer {token}",
        }
      
    

Request Body:

No request body is required for this endpoint.

Response

Response Body (JSON):

      
        {
          "ok": true
        }
      
    

Endpoint: /api/v1/contacts

Description: Fetches all newly created contacts by authenticated User's organization in Perfect Venue in the last 24 hours, sorted by latest first.

Request

Method: GET

URL: https://api.perfectvenue.com/api/v1/contacts

Request Headers:

      
        {
          "Authorization": "Bearer {token}",
        }
      
    

Request Body:

No request body is required for this endpoint.

Response

Response Body (JSON):

      
        {
          "api_version": "api_v1",
          contacts: [
            {
              "id": 123456,
              "first_name": "Sample",
              "last_name": "Contact",
              "phone_number": "1234567890",
              "email": "contact@email.com",
              "name": "Sample Contact",
              "created_at": "2024-02-02T01:10:52.025Z",
            },
            ...
          ],
        }