Skip to main contentSkip to search
Powered by Zoomin Software. For more details please contactZoomin
Progress DocumentationProgress Documentation
Progress Documentation
  • Home
  • Home
  • EnglishČeštinaDeutsch (Germany)Español (Spain)Français (France)Italiano (Italy)Português (Brasil)日本語Русский (Russia)中文 (简体) (China)中文 (繁體, 台灣) (Taiwan)ar-AR
  • Login

Progress DataDirect Autonomous REST Connector for ODBC User's Guide Release 8.0.1

Example: Paging that uses HTTP link headers

Save PDF
Save selected topicSave selected topic and subtopicsSave all topics
Share
Share to emailCopy topic URL
Print
Table of Contents
  • Welcome to the Progress DataDirect Autonomous REST Connector for ODBC
    • What's new in this release?
    • Driver requirements
    • Getting started using prebuilt Model files (Windows)
    • Getting started creating a Model file
    • Installing and setting up the driver (Windows)
    • Installing and setting up the driver (Linux)
    • Connection string examples
    • Version string information
      • getFileVersionString function
    • Data types
    • Driver specifications
    • Mapping objects to tables
      • Mapping JSON responses
        • Normalizing JSON maps
      • Mapping XML responses
      • Mapping CSV responses
      • Determining the primary key
    • Troubleshooting
    • Contacting Technical Support
  • Tutorials
    • The Example application
    • Power BI (Windows only)
    • Tableau (Windows only)
    • Microsoft Excel (Windows only)
    • Connecting to REST APIs using the Composer user interface
  • Configuring and connecting to data sources
    • Environment settings
      • Windows environment variables
      • Linux environment variables
        • Library search path
        • ODBCINI
        • ODBCINST
        • DD_INSTALLDIR
        • The test loading tool
      • UTF-16 applications on Linux
    • Configuring the relational map
    • Generating a Model file with the Autonomous REST Composer
      • Sampling REST endpoints
      • Parameter variables
      • Customizing your schema
      • Configuring custom authentication with the Configuration Manager
      • Reviewing the status of your endpoints
    • Configuring data sources with the Configuration Manager
    • Generating connection strings with the Configuration Manager
    • Using a connection string
    • Additional configuration methods for Linux
      • Configuration through the system information (odbc.ini) file
        • Sample default odbc.ini file
      • DSN-less connections
        • Sample odbcinst.ini file
      • File data sources
    • Testing connections and queries with the Configuration Manager
    • Password Encryption Tool (UNIX/Linux only)
    • Using a logon dialog box
    • Using IP addresses
    • Authentication
      • Basic authentication
      • AWS credentials authentication
      • Bearer token authentication
      • Digest authentication
      • HTTP header authentication
      • URL parameter authentication
      • OAuth 2.0 authentication
        • Access token flow
        • Authorization code grant
        • Client credentials grant
        • Dynamic authorization code grant
        • JWT bearer grant
        • Password grant
        • PKCE grant
        • Refresh token grant
        • Obtaining access and refresh tokens using the Configuration Manager
      • Custom authentication
    • TLS/SSL encryption
      • Certificates
      • TLS/SSL server authentication
      • TLS/SSL client authentication
    • Connecting through a proxy server
    • Performance considerations
  • Using the SQL engine server
    • Configuring server mode using the Configuration Manager
      • Stopping the SQL engine server using the Configuration Manager
    • Configuring the SQL engine server using Java options
      • Stopping the SQL engine server
    • Configuring Java logging for the SQL engine server
  • Additional features and functionality
    • Identifiers
    • Parameter metadata support
  • Connection option descriptions
    • Access Key
    • Access Token
    • Array Normalization Threshold
    • Authorization Code
    • Authentication Header
    • Authentication Method
    • Authentication URL Parameter
    • Authorization URI
    • Claims Issuer
    • Claims Subject
    • Client ID
    • Client Secret
    • Create Map
    • Crypto Protocol Version
    • Custom Authentication Parameters
    • Data Source Name
    • Debug Folder
    • Default Query Options
    • Description
    • Enable Login Prompt
    • Encryption Method
    • Extended Options
    • Fetch Size
    • Health Check URI
    • Host Name
    • Host Name In Certificate
    • JSON Root
    • JVM Arguments
    • JVM Classpath
    • JVM Path
    • JWT Certificate Alias
    • JWT Certificate Password
    • JWT Certificate Store
    • Key Password
    • Keystore
    • Keystore Password
    • Log Config File
    • Logoff URI
    • OAuth Client Credentials Mode
    • Password
    • Port Number
    • Proxy Host
    • Proxy Password
    • Proxy Port
    • Proxy User
    • Qualify Normalized Names
    • Read Ahead
    • Redirect URI
    • Refresh Dirty Cache
    • Refresh Schema
    • Refresh Token
    • Region
    • REST Config File
    • REST Sample Path
    • Sampling Failure Tolerance
    • Schema Map
    • Scope
    • Secret Key
    • Security Token
    • Server Port Number
    • Server Proxy Host
    • Server Proxy Password
    • Server Proxy Port
    • Server Proxy User
    • SQL Engine Mode
    • SQL Service
    • Statement Call Limit
    • Statement Call Limit Behavior
    • Table
    • Token URI
    • Transaction Mode
    • Truststore
    • Truststore Password
    • User
    • User Agent String
    • Validate Server Certificate
    • Web Service Fetch Size
    • Web Service Pool Size
    • Web Service Retry Count
    • Web Service Timeout
  • Model file syntax
    • HTTP response code processing
    • OAuth 2.0 authentication
    • Custom authentication requests
    • Table definition entries
      • Schema name
      • Write operations
      • Paging
        • Example: Paging that uses HTTP link headers
        • Example: Next page token paging that uses a URL returned in a response body
        • Example: Next page token paging that uses an HTTP header returned in a response body
        • Example: Next page token paging that uses a query parameter returned in a response body
        • Example: Next page token paging that uses a URL returned in a response header
        • Example: Next page token paging that uses an HTTP header returned in a response header
        • Example: Next page token paging that uses a query parameter returned in a response header
        • Example: Paging that uses the starting after scenario
        • Using templates for paging parameters
      • REST model parsing
      • POST requests
        • POST requests with an empty body
      • Requests with custom HTTP headers
      • Requests with custom parameters
      • Query paths
        • Requests with unparameterized paths
        • Requests with parameterized paths
        • Requests with query parameters
        • Arrays of endpoints
      • Column names
      • Data type mapping
      • Primary key
      • Read-only columns
      • Nullable columns
      • Columns as an array
      • Columns as a key-value map
      • Columns with nested objects
      • Date, time, and timestamp formats
      • Subfields
      • Columns as HTTP headers
      • Filtering and URI parameters
    • User-defined functions and procedures
      • Parameters
      • Data types syntax
      • DETERMINISTIC statements
      • NULL-input statements
      • SPECIFIC statements
      • Routine language
      • EXTERNAL statements
      • Result sets
      • RETURN statements
      • Compound statements
      • Procedural SQL statements
        • CALL statements
        • CASE statements
        • Column definitions
        • Cursor declarations
        • DELETE statements
        • FOR statements
        • Handler declarations
        • IF statements
        • INSERT statements
        • ITERATE statement
        • LEAVE statements
        • MERGE Statements
        • LOOP statements
        • OPEN statements
        • REPEAT statements
        • RESIGNAL statements
        • SET statements
        • SIGNAL statements
        • Scalar declarations
        • Singleton SELECT statements
        • Table declarations
        • UPDATE statements
        • WHILE statements
    • URL-encoded values
    • Example Model file
  • Supported SQL statements and extensions
    • Alter Session (EXT)
    • Delete
    • Insert
    • Select
      • Select clause
        • Aggregate functions
        • From clause
          • Join in a From clause
          • Subquery in a From clause
        • Where clause
        • Group By clause
        • Having clause
        • Union operator
        • Intersect operator
        • Except and Minus operators
        • Order By clause
        • Limit clause
    • Update
    • SQL expressions
      • Column names
      • Literals
        • Character string literals
        • Numeric literals
        • Binary literals
        • Date/Time literals
        • Integer literals
      • Operators
        • Unary operator
        • Binary operator
        • Arithmetic operators
        • Concatenation operator
        • Comparison operators
        • Logical operators
        • Operator precedence
      • Functions
      • Conditions
    • Subqueries
      • IN predicate
      • EXISTS predicate
      • UNIQUE predicate
      • Correlated subqueries
  • Pre-defined stored procedures
    • Amazon S3 stored procedures
      • copyObject
      • downloadObject
      • uploadObject
    • Box stored procedures
      • copyFile
      • copyFolder
      • downloadObject
      • uploadObject
    • Dropbox stored procedures
      • deleteFile
      • downloadFile
      • uploadFile
    • Google Drive stored procedures
      • downloadObject
      • uploadObject
    • Microsoft Azure Data Lake stored procedures
      • appendFile
      • copyFile
      • createFile
      • createFolder
      • downloadFile
      • flushFile
      • uploadFile
      • writeFileContents
  • Copyright
Table of Contents

Example: Paging that uses HTTP link headers

Save PDF
Save selected topicSave selected topic and subtopicsSave all topics
Share
Share to emailCopy topic URL
Print
  • Last Updated: January 23, 2024
  • 2 minute read
    • DataDirect Connectors
    • ODBC
    • Autonomous Rest Connector 8.0
    • Documentation

The following examples demonstrate the Model file syntax for services that configure paging by passing parameters in headers.

GitHub

When paging is configured in a request to GitHub, the service includes link headers in the response header. Link headers are comprised of a list of URLs with query parameters that can be used to fetch pages in a result. Through the query parameters, link headers configure pagination behavior such as page size and ordinal information. For example:
link: <https://api.github.com/repositories/1234567/issues?page=2>; rel="prev", 
      <https://api.github.com/repositories/1234567/issues?page=4>; rel="next", 
      <https://api.github.com/repositories/1234567/issues?page=200>; rel="last", 
      <https://api.github.com/repositories/1234567/issues?page=1>; rel="first"

To enable paging and set parameters in a request to GitHub, you must to specify certain properties in the Model file. First, set the #maximumPageSize property to specify the maximum rows returned in a page. Then, configure the #nextPageParameter to specify which URI parameter that holds the token to fetch the next page.

The following example demonstrates configuring next page token paging for the AllUsers table from a GitHub service.
"AllUsers":{
	"#maximumPageSize":"30",
	"#nextPageParameter":"since",
	"#path":[
		"IDENTITY users/{login}",
		"users"
	],
	"#headers": {
		"Accept": "application/vnd.github.v3+json"
	},
	"id":"Integer,#key",
//Additional table definition syntax can be populated after paging parameters.
}

OKTA

For OKTA services, responses to requests that configure paging include a series of link headers that are used to fetch pages in the result. Each link header returned represents a page in the result and includes paging configuration information, such as the page size, ordinal information, and the cursor ID number. For example:
link: <https://{myDomain}/api/v1/logs?limit=25>; rel="self"
link: <https://{myDomain}/api/v1/logs?limit=25&after=1234567898765_1>; rel="next"

To configure paging for OKTA services in a request, you must specify the page size using the #maximumPageSize property and, via the #nextPageParameter, the query parameter specifying the token ID number.

The following example demonstrates configuring Next Page Token Paging with the USERS table from an OKTA service.
"USERS": {
    "#path": [
      "/users"
    ],
	"#maximumPageSize": 20,
	"#nextPageParameter": "after",
	"id": "VarChar(30),#key",
//Additional table definition syntax can be populated after paging parameters.
}
TitleResults for “How to create a CRG?”Also Available inAlert